アップロードのいろいろ
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>アップロード・ダウンロード]]
* 目次 [#bd8e54b2]
#contents
*概要 [#wfafecc4]
ファイルのアップロードについての情報を纏めます。
*通常のアップロード方法 [#a015b334]
**Form-based File Upload [#z5b973ac]
RFC1867で規定されている模様。
-フォームよるファイルアップロードの仕様~
http://www.javadrive.jp/servlet/fileupload_tutorial/index...
--Form-based File Upload in HTML~
https://www.ietf.org/rfc/rfc1867.txt
***Content-Type [#e367a311]
multipart/form-dataを使用する。
-WWWブラウザのFormからファイルアップロードする一般的方法
-<INPUT type="file">を使用してアップロードできる。
--INPUT type=file-HTMLタグリファレンス~
http://www.htmq.com/html/input_file.shtml
***HTTP1.0 / 1.1メソッド [#qf3ba1b0]
-POSTメソッドを使用する。
-PUTは使用できない模様(後述)。
**その他の方法 [#e777e3f4]
***HTTP1.0 / 1.1メソッド [#vfb43775]
PUTメソッドなども使用できるが、~
multipart/form-data とは組み合わせられない模様。~
(application/x-www-form-urlencodedでは動作する)
-HTTPメソッドのPOSTとPUTの使い分け - アインシュタインの電...
http://blog.ruedap.com/2011/03/24/http-method-post-put
-php - REST PUT send data with multipart-form-data - Stac...
http://stackoverflow.com/questions/18530253/rest-put-send...
***WebDAV追加メソッド [#fe706d33]
-WebDAV - Wikipedia~
http://ja.wikipedia.org/wiki/WebDAV
--ボディ部では、クライアント・サーバ双方ともXMLを用いる。
--HTTP 1.1(のメソッド)に加え
---GET
---HEAD
---POST
---PUT
---DELETE
---OPTIONS
--次のメソッドが存在する。
---PROPFIND~
プロパティの取得
---PROPPATCH~
プロパティの変更
---MKCOL~
指定したURIの場所に新たな資源を作成する。
---COPY~
指定したURIが示す資源およびその属性値を別のURIにコピーす...
---MOVE~
指定したURIが示す資源およびその属性値を別のURIに移動する。
---LOCK~
指定したURIが示す資源のファイルロックを設定する。~
共有ロックと排他ロックの二種類が利用できる。
---UNLOCK~
指定したURIが示す資源のロックを解除する。
*大容量ファイルのアップロード [#lcf58b88]
大量データのアップロードには、以下の方式がある。
-[[分割アップロード>#o2cfe3b7]]
-[[その他の方法>#ad7b3a27]]
--[[MTOM>#w32a688f]]
Streaming、MTOMなどに対応している~
APサーバは少ないと考えられるため、~
分割アップロードが一般的設計と考える。
**分割アップロード [#o2cfe3b7]
主に、APサーバのStreaming対応の有無によって、~
分割アップロードが必要になることがある。
***必要性 [#h718965e]
Streaming対応が無いAPサーバでは、~
multipart/form-dataを全てメモリに溜め込んでしまうため、~
メモリ・リークに陥る。この対応として分割アップロードがあ...
***選択肢 [#v42bb928]
-クライアントを作りこむ。~
HTTPクライアントライブラリ(API)を使用して~
ファイル分割アップロード処理を行うHTTPクライアントを開発...
-JavaScriptライブラリを使用する。~
jQuery-File-Uploadを使用して、分割アップロードが可能。
--jQuery File Uploadを利用した大容量ファイルの~
アップロードをChunked uploadで実現する - KayaMemo~
http://kayakuguri.github.io/blog/2015/10/01/jquery-chunke...
>以下も参考になるが、こちらは、ノーマルなjQueryのサンプル...
--asp.net MVCとjQueryでファイルアップロードするメモ | リ...
http://blog.regrex.jp/2016/06/03/post-498/
***注意点 [#md91fb8b]
こちらと同様、2GB以上のファイルを扱えないケースがある。
-[[2GB制限>ダウンロードのいろいろ#h23ea62b]]
**その他の方法 [#ad7b3a27]
***MTOM [#w32a688f]
MTOM(Message Transmission Optimization Mechanism)
-BufferモードとStreamingモードがあり、後者でこの問題を解...
-APサーバのStreaming対応が無い場合も、MTOMでStreamingがサ...
-JavaScriptからMTOMのWebサービスは利用できないので~
Webサービス・クライアントの開発が必要になる。
-MTOMはWCFなどを使用したWebサービスで利用可能~
(対応可能かどうか?は使用するAPサーバ・フレームワークに...
-参考
--大規模データとストリーミング | Microsoft Docs~
https://docs.microsoft.com/ja-jp/dotnet/framework/wcf/fea...
--WCF: Streaming Large Data Files~
https://www.c-sharpcorner.com/uploadfile/afenster/wcf-str...
*参考 [#m19b1eb7]
**[[ダウンロードのいろいろ]] [#i495f573]
**Open 棟梁 Wiki [#ob78ea14]
***[[ファイルのアップロード>https://opentouryo.osscons.jp...
----
Tags: [[:その他、開発の色々]]
終了行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>アップロード・ダウンロード]]
* 目次 [#bd8e54b2]
#contents
*概要 [#wfafecc4]
ファイルのアップロードについての情報を纏めます。
*通常のアップロード方法 [#a015b334]
**Form-based File Upload [#z5b973ac]
RFC1867で規定されている模様。
-フォームよるファイルアップロードの仕様~
http://www.javadrive.jp/servlet/fileupload_tutorial/index...
--Form-based File Upload in HTML~
https://www.ietf.org/rfc/rfc1867.txt
***Content-Type [#e367a311]
multipart/form-dataを使用する。
-WWWブラウザのFormからファイルアップロードする一般的方法
-<INPUT type="file">を使用してアップロードできる。
--INPUT type=file-HTMLタグリファレンス~
http://www.htmq.com/html/input_file.shtml
***HTTP1.0 / 1.1メソッド [#qf3ba1b0]
-POSTメソッドを使用する。
-PUTは使用できない模様(後述)。
**その他の方法 [#e777e3f4]
***HTTP1.0 / 1.1メソッド [#vfb43775]
PUTメソッドなども使用できるが、~
multipart/form-data とは組み合わせられない模様。~
(application/x-www-form-urlencodedでは動作する)
-HTTPメソッドのPOSTとPUTの使い分け - アインシュタインの電...
http://blog.ruedap.com/2011/03/24/http-method-post-put
-php - REST PUT send data with multipart-form-data - Stac...
http://stackoverflow.com/questions/18530253/rest-put-send...
***WebDAV追加メソッド [#fe706d33]
-WebDAV - Wikipedia~
http://ja.wikipedia.org/wiki/WebDAV
--ボディ部では、クライアント・サーバ双方ともXMLを用いる。
--HTTP 1.1(のメソッド)に加え
---GET
---HEAD
---POST
---PUT
---DELETE
---OPTIONS
--次のメソッドが存在する。
---PROPFIND~
プロパティの取得
---PROPPATCH~
プロパティの変更
---MKCOL~
指定したURIの場所に新たな資源を作成する。
---COPY~
指定したURIが示す資源およびその属性値を別のURIにコピーす...
---MOVE~
指定したURIが示す資源およびその属性値を別のURIに移動する。
---LOCK~
指定したURIが示す資源のファイルロックを設定する。~
共有ロックと排他ロックの二種類が利用できる。
---UNLOCK~
指定したURIが示す資源のロックを解除する。
*大容量ファイルのアップロード [#lcf58b88]
大量データのアップロードには、以下の方式がある。
-[[分割アップロード>#o2cfe3b7]]
-[[その他の方法>#ad7b3a27]]
--[[MTOM>#w32a688f]]
Streaming、MTOMなどに対応している~
APサーバは少ないと考えられるため、~
分割アップロードが一般的設計と考える。
**分割アップロード [#o2cfe3b7]
主に、APサーバのStreaming対応の有無によって、~
分割アップロードが必要になることがある。
***必要性 [#h718965e]
Streaming対応が無いAPサーバでは、~
multipart/form-dataを全てメモリに溜め込んでしまうため、~
メモリ・リークに陥る。この対応として分割アップロードがあ...
***選択肢 [#v42bb928]
-クライアントを作りこむ。~
HTTPクライアントライブラリ(API)を使用して~
ファイル分割アップロード処理を行うHTTPクライアントを開発...
-JavaScriptライブラリを使用する。~
jQuery-File-Uploadを使用して、分割アップロードが可能。
--jQuery File Uploadを利用した大容量ファイルの~
アップロードをChunked uploadで実現する - KayaMemo~
http://kayakuguri.github.io/blog/2015/10/01/jquery-chunke...
>以下も参考になるが、こちらは、ノーマルなjQueryのサンプル...
--asp.net MVCとjQueryでファイルアップロードするメモ | リ...
http://blog.regrex.jp/2016/06/03/post-498/
***注意点 [#md91fb8b]
こちらと同様、2GB以上のファイルを扱えないケースがある。
-[[2GB制限>ダウンロードのいろいろ#h23ea62b]]
**その他の方法 [#ad7b3a27]
***MTOM [#w32a688f]
MTOM(Message Transmission Optimization Mechanism)
-BufferモードとStreamingモードがあり、後者でこの問題を解...
-APサーバのStreaming対応が無い場合も、MTOMでStreamingがサ...
-JavaScriptからMTOMのWebサービスは利用できないので~
Webサービス・クライアントの開発が必要になる。
-MTOMはWCFなどを使用したWebサービスで利用可能~
(対応可能かどうか?は使用するAPサーバ・フレームワークに...
-参考
--大規模データとストリーミング | Microsoft Docs~
https://docs.microsoft.com/ja-jp/dotnet/framework/wcf/fea...
--WCF: Streaming Large Data Files~
https://www.c-sharpcorner.com/uploadfile/afenster/wcf-str...
*参考 [#m19b1eb7]
**[[ダウンロードのいろいろ]] [#i495f573]
**Open 棟梁 Wiki [#ob78ea14]
***[[ファイルのアップロード>https://opentouryo.osscons.jp...
----
Tags: [[:その他、開発の色々]]
ページ名: