2017-04-04 7 views
0

guzzle이 아닌 나 자신이 설정 한 컨텐츠 길이로 요청을 보내려고합니다. (guzzle 6)Guzzle Content-Length 정의

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

그러나 이렇게하면 요청이 전송되지 않습니다.

내 URL에 검색어 문자열이 있고 콘텐츠 길이를 설정해야하므로이 작업을 수행하고 있습니다. 그렇게하지 않으면 콘텐츠 길이 : 0을 그릴로 설정합니다. 어떻게하면 모든 헤더를 정의하고 그로부터 그루터기를 멈출 수 있습니까?

감사합니다 귀하의 코드가 폭음과 함께 완벽하게 작동

답변

0

은 (단지 결국 놓쳐 브라켓을 추가).

예외가 발생하지만 서버가 413 Request entity too large으로 응답하고 Guzzle가이를 예외로 변환하기 때문입니다 (이 동작을 제어하려면 http_errors 참조). 요청 본문을 전혀 제공하지 않기 때문입니다.

어쨌든, 나는 쿼리 문자열이 Content-Length 헤더에 어떻게 연결되는지 알지 못합니다. 헤더는 요청 본문의 길이를 정의하지만 쿼리 문자열은 본문의 일부가 아니므로 연결되지 않습니다.