Heim  >  Artikel  >  Backend-Entwicklung  >  PHP implementiert Soap, um die WebService-ASMX-Datei von .Net aufzurufen

PHP implementiert Soap, um die WebService-ASMX-Datei von .Net aufzurufen

高洛峰
高洛峰Original
2017-02-28 14:50:571523Durchsuche

Das Beispiel in diesem Artikel beschreibt die Implementierung von PHP, der die WebService-ASMX-Datei von .Net über Soap aufruft. Teilen Sie es allen als Referenz mit. Die Details lauten wie folgt:

Kürzlich habe ich einem Kollegen beim Testen der in .net geschriebenen WebService-Schnittstelle geholfen, und der C#-Aufruf wurde erfolgreich durchgeführt PHP-Version zum Aufrufen. Zur Erkundung ist der entsprechende Prozess zum Aufrufen von PHP-Webdiensten wie folgt:

1. Öffnen Sie PHP-bezogene Erweiterungen:

Suchen Sie die Konfiguration Datei php.ini Datei und öffnen Sie die folgende Erweiterung

extension = php_soap.dll
extension = php_curl.dll
extension = php_openssl.dll

2.php-Code lautet wie folgt:

<?php
header("content-type:text/html;charset=utf-8");
$client = new SoapClient(" http://www.php.cn/:8080/ChkWelePsw.asmx?WSDL");
//本行测试不可行 $client = new SoapClient(" http://www.php.cn/:8080/chkwelepsw.asmx?WSDL/ChkWele?username=test3&psw=123");
//参数这样传递 先包装一下
$param = array(&#39;username&#39;=>&#39;test3&#39;,&#39;psw&#39;=>&#39;123&#39;);
//调用必须用__soapCall
$p = $client->__soapCall(&#39;ChkWele&#39;,array(&#39;parameters&#39; => $param));
print_r($p->ChkWeleResult); //这里先输出一下变量$p,看看是什么类型。
?>

Beachten Sie, dass nach dem Aufrufen einer Methode durch PHP sein Soap-Objekt automatisch eine Ergebnismethode generiert, um die Anzeige des Aufrufergebnisses zu erleichtern, z. B. die Methode „ChkWele“ von der oben aufgerufene WebService,

Aufruf Am Ende befindet sich eine entsprechende „ChkWeleResult“-Methode.

.NET-Teil-Webservice sollte beachtet werden

/*
 *  <system.web>在这个节点中加入如下内容
  <webServices>
   <protocols>
    <add name="HttpSoap"/>
    <add name="HttpPost"/>
    <add name="HttpGet"/>
    <add name="Documentation"/>
   </protocols>
  </webServices>
 */
[WebMethod(Description = "This......", EnableSession = false)]
public string ChkWele(string username, string psw)
{
  string ret = "";
  return ret;
}

Weitere Artikel über die PHP-Implementierung von Soap zum Aufrufen der WebService-ASMX-Datei von .Net finden Sie unter PHP Chinesische Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn