亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何獲取php響應中的xml

如何獲取php響應中的xml

PHP
茅侃侃 2023-07-15 16:50:34
我正在嘗試使用以下代碼從服務器獲取響應:<?php$url = "http://pgtest.redserfinsa.com:2027/WebPubTransactor/TransactorWS?WSDL";$post_string = '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"xmlns:web="http://webservices.serfinsa.sysdots.com/">   <soapenv:Header/>   <soapenv:Body>      <web:cardtransaction>         <!--Optional:-->         <security>{"comid":"comid","key":"$!@!@!@!@!@","comwrkstation":"comwrkstation"}</security>         <!--Optional:-->         <txn>MAN</txn>         <!--Optional:-->         <message>{"CLIENT":"9999994570392223"}            </message>      </web:cardtransaction>   </soapenv:Body></soapenv:Envelope>';$post_data = array('xml' => $post_string);$stream_options = array(    'http' => array(        'method'  => 'POST',        'header'  => 'Content-type: text/xml' . "\r\n",        'content' =>  http_build_query($post_data)));$context  = stream_context_create($stream_options);$response = file_get_contents($url, null, $context);?>但是,我仍然收到空回復,有人知道嗎?
查看完整描述

1 回答

?
HUX布斯

TA貢獻1876條經驗 獲得超6個贊

我不知道為什么你的代碼返回空,但你可以嘗試使用curl


代碼:


$url = "http://pgtest.redserfinsa.com:2027/WebPubTransactor/TransactorWS?WSDL";


$xml = '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"

xmlns:web="http://webservices.serfinsa.sysdots.com/">

   <soapenv:Header/>

   <soapenv:Body>

      <web:cardtransaction>

         <security>{"comid":"comid","key":"$!@!@!@!@!@","comwrkstation":"comwrkstation"}</security>

         <txn>MAN</txn>

         <message>{"CLIENT":"9999994570392223"}

         </message>

      </web:cardtransaction>

   </soapenv:Body>

</soapenv:Envelope>';


$headers = array(

  "Content-type: text/xml",

  "Content-length: " . strlen($xml),

  "Connection: close",

);


$curl = curl_init();

curl_setopt($curl, CURLOPT_URL, $url);

curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($curl, CURLOPT_TIMEOUT, 30);

curl_setopt($curl, CURLOPT_POST, true);

curl_setopt($curl, CURLOPT_POSTFIELDS, $xml);

curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);


$response = curl_exec($curl);

$error = curl_error($curl);



print_r($response);

print_r($error);

結果:


接收失?。哼B接被對等方重置


查看完整回答
反對 回復 2023-07-15
  • 1 回答
  • 0 關注
  • 154 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號