私は単にパラメータを.net Webサービスに渡すようにphpを取得しようとしていますが、パラメータを呼び出しに追加することはありませんが、関数を呼び出します。
これがphpです:
$client = new SoapClient("example.com/page.asmx?WSDL");
$header = new SoapHeader('example.com/', 'UserCredentials',
array(
'userName' => "cory",
'password' => "test",
)
);
$client->__setSoapHeaders(array($header));
print_r($client->add("test1234"));
ここに.netがあります
[WebMethod]
[SoapHeader( "consumer", Required = true )]
public string add( string id )
{
if( id == null || id != "test1234" ) {
return "ID Invalid: " + consumer.ToString() + ":::" + id;
}
return "good";
}
public class UserCredentials : System.Web.Services.Protocols.SoapHeader
{
public string userName;
public string password;
public override string ToString()
{
return userName + ":" + password;
}
}
これを実行するたびに印刷されます
stdClass Object ( [addResult] => ID Invalid: cory:test::: )
したがって、資格情報は適切に渡されますが、値は決して成功しません。ヘルプはありますか?