2017-04-04 8 views
0

私はコンテンツの長さがguzzではなく自分で設定されたリクエストを送信しようとしています。 (guzzle 6)Guzzle Content-Lengthを定義します。

$res = $client->request('POST', $url, ['headers' => ['Content-Length' => 32]]; 

ただし、これにより送信要求が停止します。

URLにクエリ文字列が含まれているため、コンテンツの長さを設定する必要があるため、この処理を行っています。そうしないと、グレッグでContent-Length:0に設定されます。どのようにすれば、すべてのヘッダーを定義し、グレッグがこれをやめるのを止めることができますか?

よろしく

答えて

0

あなたのコードはがつがつ食うと完璧に動作します(終了間際で逃したブラケットを追加;)。

サーバーは413 Request entity too largeで応答し、Guzzleはそれを例外に変換します(この動作を制御するにはhttp_errorsを参照してください)。リクエスト本体をまったく提供していないためです。

とにかく、質問の文字列がContent-Lengthヘッダーにどのように接続されているかわかりません。要求本体のヘッダー定義長ですが、照会文字列は本文の一部ではないため、接続はありません。

関連する問題