ページ 11

HTTPクライアント 大きいサイズのデータをPOSTする方法

Posted: 2017年9月06日(水) 21:33
by eForce技術担当
http_cmd_postを使用してサーバへPOSTしたいが、
データサイズが大きいので、全データをバッファへ展開できない場合は、
次の手順で関数を実行してください。

1.http_cmd_postを実行
  T_HTTP_CLINET型の引数のメンバ変数flagのHTTPC_FLG_SND_BODY_LATERビットをセットします。
2.POSTするデータの一部をバッファへ展開します。
3.http_sndで2.のデータをサーバへ送信します。
4.次のデータをバッファへ展開します。
5.http_sndで4.のデータをサーバへ送信します。
以降、バッファへデータを展開する、http_sndでデータを送信するを、POSTするデータのサイズ分繰り返します。

6.http_rcv_statusでサーバからのレスポンス(ステータスラインとヘッダ)を受信、処理します。

以降はhttp_cmd_postでHTTPC_FLG_SND_BODY_LATERをセットしない場合と同じです。
(http_rcv_resでコンテンツを受信します。)

------------------------------------------------------------------------------------------------------------------------------------------
具体的な例は次のページを参照してください。

HTTPクライアントサンプルプログラム - ファイルアップロード
 viewtopic.php?f=16&t=343