ixudra / curl post multipart / form-data с другим типом контента - PullRequest
0 голосов
/ 14 ноября 2018

Я пытаюсь опубликовать multipart / form-data в laravel, используя ixudra / curl, который указывает, что данные - это приложение json.Проблема, с которой я сталкиваюсь, состоит в том, чтобы назначить тип для данных и при этом сделать тип содержимого заголовка multipart / form-data.

$contents = storage_path('app/curl.txt');
$dataJson = '{"bId":"79", "docId":"23"}';
$response = Curl::to($url)
->withHeaders( array( 
    'Authorization: Bearer 123432',
    'grant_type: jwt-bearer' ) )
->withData( array ('data' => $dataJson ))
->withFile('file', $contents, 'text/*', 'curl.txt')
->containsFile()
->withResponseHeaders()
->returnResponseObject()
->post();

Для локона это так.Почему-то возникает ошибка « Ошибка аутентификации OAuth-токена », а тип содержимого заголовка не multipart / form-data

curl -v -H "Authorization:Bearer 123432" 
-H "grant_type:jwt-bearer" 
-F "file=@\"/jet/app/www/default/test/storage/app/curl.txt\"" 
-F "data={\"bId\":\"79\", \"docId\":\"23\"};type=application/json" 
"https://url/private"

Есть идеи?спасибо за ваше время.

1 Ответ

0 голосов
/ 07 декабря 2018

это все еще проблема? Глядя на ваш код, я не вижу там никаких ошибок. Вам не нужно включать туда метод containsFile(), но это деталь, которая никак не повлияет на ваш результат.

Исходя из вашего описания, я сомневаюсь, что файл имеет какое-либо отношение к ошибке. Я бы порекомендовал попытаться убедиться в правильности аутентификации, используя ее для простого запроса GET, просто чтобы убедиться. Если это сработает, вам следует углубиться в форму.

...