>  기사  >  백엔드 개발  >  哪位高手帮小弟我改编用curl调用web service

哪位高手帮小弟我改编用curl调用web service

WBOY
WBOY원래의
2016-06-13 10:07:59846검색

谁帮我改编用curl调用web service
 
$s = new SoapClient("http://www.abc.com/WebServices/Service1.asmx?wsdl",true);
  $s->soap_defencoding = 'UTF-8';
 $s->decode_utf8 = false;
  $result=$s->call('UserInfo',array('user'=> urldecode($_GET['username'])));  

  if (!$err=$s->getError()) {  
  $list=explode(";",$result["UserInfoResult"]);
  array_pop($list);
  } else {  
  echo '

 

';  
  }
 ?>

Service1.asmx这个web service里有个UserInfo函数,要把参数传进这个函数,返回结果集

本来好好的,但是虚拟主机不给开soap拓展,那就不用白费力气了,,现在怎么弄curl改写

------解决方案--------------------

------解决方案--------------------
$url="https://xxx/xml";

$ch = curl_init ($url);
$headers = array(
"POST "."https://cxxx/integration/xml"." HTTP/1.0",
"Content-type: text/xml;charset=\"utf-8\"",
"Accept: text/xml",
"Content-length: ".strlen($xmlcontent),
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,0);

// Apply the XML to our curl call
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xmlcontent);

$data = curl_exec($ch);
if (curl_errno($ch)) {
die('会议信息出错,有可能会议还未开始!');
exit;
} else {
//var_dump($data);
curl_close($ch);
}
//
$succes='';
$ciURL='';
$token='';
$xml = simplexml_load_string($data);
$ciURL = $xml->body->ciURL;
$token = $xml->body->token;
var_dump( $xml );

------解决方案--------------------
楼主估计想结贴结疯拉。呵呵
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.