0
我正在使用Guzzle 4,我想使用multipart/form-data發佈文件。我不確定哪個是正確的做法。POST multipart/form-data with Guzzle 4
我已經試過:
$client = new GuzzleHttp\Client();
$request = $client->createRequest('POST', 'https://127.0.0.1/1/files/', ['json' => ['id' => 'dc51bfe4-92af-483d-80c4-f2da4cafa723'], 'cookies' => true]);
$request->getBody()->addFile(new PostFile('a.pdf', fopen('a.pdf', 'rb')));
$response = $this->client->send($request);
我得到這個錯誤:
Fatal error: Call to undefined method GuzzleHttp\Stream\Stream::addFile()
同樣的情況,如果我addPostFile取代addFile。
任何想法?
啊謝謝。但之後我無法找到如何傳遞json數據。我發現setBody(),但這是Guzzle v3,而不是v4。 –
我不是100%確定你需要做什麼。我覺得你想發佈JSON數據(可能是application/json content-type)和一個文件(可能是multipart/form-data content-type)有點奇怪。我想你可能只需要使用'$ request-> getBody() - > setFields'來傳遞id字段 – Maury