使用laravel 5.2我尝试了下面的代码:
$xml =
"<BALANCE>
<Userid>myuserid</Userid>
<Loginkey>myloginkey</Loginkey>
<Transactionid>mytransactionid</Transactionid>
</BALANCE>";
$request = $client->request('POST', 'serveraddress:serverport/servicename/webservice.php',['Content-Type' => 'text/xml; charset=UTF8'],$xml);
var_dump($request->getBody());
我收到以下回复:
对象(GuzzleHttp \ Psr7 \ Stream)#171(7){[&#34; stream&#34;:&#34; GuzzleHttp \ Psr7 \ Stream&#34;:private] =&gt;类型(流)的资源(231)[&#34;大小&#34;:&#34; GuzzleHttp \ Psr7 \ Stream&#34;:private] =&gt; NULL [&#34;可搜索&#34;:&#34; GuzzleHttp \ Psr7 \ Stream&#34;:private] =&gt; bool(true)[&#34;可读&#34;:&#34; GuzzleHttp \ Psr7 \ Stream&#34;:private] =&gt; bool(true)[&#34;可写&#34;:&#34; GuzzleHttp \ Psr7 \ Stream&#34;:private] =&gt; bool(true)[&#34; uri&#34;:&#34; GuzzleHttp \ Psr7 \ Stream&#34;:private] =&gt; string(10)&#34; php:// temp&#34; [&#34; customMetadata&#34;:&#34; GuzzleHttp \ PSR7 \流&#34;:私人] =&GT; array(0){}}
根据提供商的说法,服务器上的请求和响应都可以。
如何使用xml响应?换句话说,我如何使用psr7对象或流,这样我才能显示有意义的信息?
答案我读到哪些对我没有帮助&#34;然而&#34; (要么不知道如何处理所提供的信息,要么信息不适用于我的情况);
string
置于前面时,结果为string(1)&#34; &#34;
NULL
string(1)&#34; &#34;
5。https://stackoverflow.com/a/35632231/3664960
在评论中查看我的评论
请注意:
我可以阅读标题并正确显示它们!
答案 0 :(得分:0)
我想你只是从服务器得到一个空的答案。因为你的要求是错误的。
试试这个
$request = $client->request(
'POST',
'serveraddress:serverport/servicename/webservice.php',
[
'headers' => ['Content-Type' => 'text/xml; charset=UTF8'],
'body' => $xml
]
);
而不是原始请求。
注意选项。 Client::request()
没有身体的第四个参数,它应作为选项传递。