curl Expect:100- continue
curl POST データを使用する場合、POST データ が 1024 バイト より大きい場合、curl は POST リクエストを直接開始しません。代わりに、2 つのステップで実行されます。
1. ヘッダーに Expect:100- continue を指定してリクエストを送信し、サーバーにデータを受け入れるかどうかを尋ねます。
2. サーバーから100-Continueレスポンスを受信したら、データをサーバーにPOSTします。
これは libcurl によって定義されています。詳細については、関連する説明を参照してください: http://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html#sec8.2.3
これには 1 つの質問が表示されます。すべてのサーバーが 100-Continue で応答するわけではありません。たとえば、lighttpd は 「417 Expectation Fail」 を返し、論理エラーが発生します。
解決策は次のとおりです: リクエストを送信するとき、ヘッダーには空の Expect が含まれます。
上記では、関連する内容も含めて、curl Expect:100- continue を紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。