Чтобы процитировать ссылку № 1:
Тело объекта — это термин, используемый для тела HTTP-сообщения. Основная часть запросов и ответов по своей сути является потоком PHP в Guzzle.
Это означает, что объект EntityBody можно использовать с HTTP-запросами и ответами.
Сигнатура метода для Client::post()
— post($uri = null, $headers = null, $postBody = null, array $options = array()).
Как видно из вашего фрагмента кода, вы не устанавливаете тело почтового запроса. На самом деле все, что вы делаете, это устанавливаете некоторые параметры запроса uri.
Основываясь на ссылках № 2, № 3 и № 4: вы, вероятно, захотите сделать что-то вроде:
$body = EntityBody::factory(fopen($file_location));
$body->compress(); //compresses the body using the deflate php stream filter
$request = $client->post($uri, $headers, $body, $options);
$response = $client->send($request);
Я должен заявить, что на самом деле я никогда этого не делал, я использовал v4+ большую часть последних 1,5 лет, и я не могу проверить это в данный момент.
Рекомендации:
- тела объектов
- Тела объектов — сжатие
- Использование объектов запроса — POST-запросы
- Guzzle 3 — Client.php
person
Shaun Bramley
schedule
24.09.2015