Я пытаюсь отправить файл стороннему API. По какой-то причине «Content-Type: text / plain» для файла добавляется к содержимому файла. Я не устанавливаю какой-либо тип контента самостоятельно. Если я захожу в жрет MultipartStream.php и удаляю добавление типа контента, он работает нормально. (Очевидно, потому что тип контента тогда не устанавливается)
Мне либо нужен способ заставить жрет не добавлять заголовок, либо выяснить, почему он добавляется в содержимое файла, а не интерпретируется как заголовок. Код для запроса ниже. Отправка запроса от почтальона, кажется, работает, поэтому я думаю, что это что-то с Guzzle.
$data = [
'multipart' => [
[
'name' => 'Function',
'contents' => 'Upload',
],
[
'name' => 'Source',
'contents' => 'EDI',
],
[
'name' => 'AuthenticationID',
'contents' => $this->authentication_id,
],
[
'name' => 'File',
'filename' => "file.txt",
'contents' => fopen('file.txt', 'r'),
]
]
];
$response = $this->client()->post("https://crapapi.com/crap/upload.svl", $data);