我正在尝试使用Guzzle将我的Laravel框架连接到我的服务器.每个GET请求没有参数,但我遇到POST问题.
这个使用cURL的请求工作正常:
curl -i -X POST -H 'Content-Type: application/json' -d '{"email":"user@domain.com","pwd":"xxxxxx"}' http://www.example.com:1234/rest/user/validate
这就是我试图用Guzzle实现的:
$response = GuzzleHttp\post('http://www.example.com:1234/rest/user/validat',[ 'headers' => ['Content-Type' => 'application/json'],'body' => ['{"email":"user@domain.com","pwd":"xxxxxx"}'] ]); print_r($response->json());
当我提出请求时,我收到下一个错误:
[status code] 415 [reason phrase] Unsupported Media Type
我认为是与身体有关的东西,但我不知道如何解决它.
任何的想法?
身体值周围没有方括号.此外,请确保定义了Accept标头.您应该使用此代替:
$response = GuzzleHttp\post('http://www.example.com:1234/rest/user/validat',[ 'headers' => ['Content-Type' => 'application/json','Accept' => 'application/json'],'body' => '{"email":"user@domain.com","pwd":"xxxxxx"}' ]); print_r($response->json());