Я пытаюсь отправить запрос в мой веб-API с помощью клиента Laravel Guzzle Http.Тем не менее я получаю ошибки при попытке отправить запрос.Данные, которые я хочу отправить, представляют собой XML, поскольку контроллер API построен в формате возврата XML.
Я перепробовал все виды методов для отправки запроса с помощью Guzzle, но он еще не работает.
public function createProperty(Request $request)
{
$client = new Client();
$post = $request->all();
$create = $client->request('POST', 'http://127.0.0.1:5111/admin/hotel', [
'headers' => [
'Content-Type' => 'text/xml; charset=UTF8',
],
'form-data' => [
'Name' => $post['hotel_name'],
'Address' => $post['address'],
'Phone' => $post['phone'],
'Email' => $post['email'],
'Website' => $post['website'],
'Latitude' => $post['latitude'],
'Longitude' => $post['longitude'],
'Tags' => $post['tags'],
'Priority' => $post['priority'],
'Visible' => $post['visible'],
'Stars' => $post['stars'],
'Description' => $post['description'],
'Facilities' => $post['facilities'],
'Policies' => $post['policies'],
'ImportantInfo' => $post['important_info'],
'MinimumAge' => $post['minimum_age']
]
]);
//dd($create->getBody());
echo $create->getStatusCode();
echo $create->getHeader('content-type');
echo $create->getBody();
$response = $client->send($create);
$xml_string = preg_replace('/(<\?xml[^?]+?)utf-16/i', '$1utf-8', $create->getBody());
$xml_string = $create->getBody();
//dd($xml_string);
$hotels = simplexml_load_string($xml_string);
return redirect()->back();
}
Я ожидал, что результат отправит POST в веб-службу и сохранит данные в базе данных, но, тем не менее, я получил ошибку «Ошибка клиента: POST» http://127.0.0.1:5111/admin/hotel', приведшая к 400 неправильным запросам'ответ. Пожалуйста, предоставьте действительный объект XML в теле