最近、PHP ソープ サーバー
を作成しました。これにより、PHP クライアントの呼び出しが可能になりましたが、C# クライアントの呼び出しを実装できませんでした。マニュアルを読んで長い間探しても、まだ実装できませんでした。
にアクセスできません。sf.net の nusoap
オープンソース
プロジェクトを試してみました。効果は非常に優れており、必要な機能を非常に簡単に実現できます
サービス
(サーバー側) は実装が非常に簡単で、C# クライアントを呼び出すのにも非常に便利です
PHP の Web サーバーは通常 .wsdl ファイルを生成します
。提供されるサービスを説明する XML ファイルです
最初の php Web サービス
/**
* processsimpletype メソッド
* @param string $挨拶する人の名前
* @return string $hellotext こんにちは文字列
*/
function processsimpletype($who) {
return "hello $who, http:// www.cxybl.com
へようこそ";
}
?>
忘れずに
nusoap
をダウンロードしてください? php
require_once("lib/nusoap/nusoap.php");
$namespace = "http://www.cxybl.com";
// 新しい SOAP サーバーを作成します
$server = newsoap_server();
// wsdl を設定します
$server->configurewsdl("simpleservice");
// 名前空間を設定します
$server->wsdl->schematargetnamespace = $namespace;
// Web メソッドを登録します
$server->register(
// メソッド名:
"processsimpletype",
// パラメータ リスト:
array( "name"=>"xsd:string"),
// 戻り値:
array("return"=>"xsd:string"),
// 名前空間:
$namespace,
//soapaction: (デフォルトを使用)
false,
//スタイル。rpc または document
"rpc",
//使用: エンコードまたはリテラル
"encoded",
// description: メソッドのドキュメント
"a simple hello world web method");
// サービスが消費されている場合は投稿されたデータを取得します
// それ以外の場合このデータは空白のままにしておきます。
$post_data = isset( $globals["http_raw_post_data"]) $globals["http_raw_post_data"] : "";
// 投稿されたデータ (または何も) を SOAP サービスに渡します
$server->service($post_data) ;
exit();
?>
これを書いたら使用できます
.net を開いて参照を追加します
次に wsdl をクリックすると、次のように提供されるサービスが表示されます。 画像
この記事へのリンク http://www.cxybl.com/html/wlbc/Php/20120531/27134.html