1
0
私はいつもHTTPS経由であることを意図している.NET WCFサービスを作成しました。 最初にサービススケルトンを作成し、それをHTTP経由で実行したとき、それはうまく機能しました。 PHP 5を使用して、組み込みのSOAP関数との相互運用性をテストしました。 しかし、一度HTTPSに切り替えると、PHPから関数を呼び出そうとすると、「Method Not Allowed」というメッセージと「http」というフォルトコードが返されます。それは私がメソッドのリストを取得することはできますが。 メソッド「Test」を呼び出すと、エラーが発生します。
これがWCFの設定です。
そしてここにPHPがそれを呼んでいる方法があります:
$ client = new SoapClient( "https://192.168.0.3/API.svc?wsdl");エコー "" 。 print_r($ client - > __ getFunctions()、1) "
"; $ param = new stdClass(); $ param→ A =" 123 "; $ param→ B =" 456 ";試してください\ {$ client→ Test($ param);} catch(例外$ e) \ {死ぬ( "
" print_r($ e、1) "
");}
テストに自己署名SSL証明書を使用していますが、PHPには信頼できる証明書が必要であるとは思われません。
何がおかしいのですか?
1 Answer
1
あなたは実際にどこから要求されたのかを見るためにネットワークスニファを試しましたか? FiddlerやWiresharkのようなもの(シナリオによって異なります)。
また、要素に `behaviorConfiguration =" apiBehavior "`が欠落していることにも注意してください。