PHP Soap身份验证头599
我是php Soap web服务的新手。我正在尝试创建客户端/服务器机制来交换一些基本数据。这个我已经做了。但是,我需要帮助如何从客户端发送头身份验证详细信息,以及如何在服务器上解析它(例如,用户名、密码和API密钥) 你能给我举个基本的例子吗,我真的很需要。 提前谢谢。希望这对您有所帮助 SOAP客户机语句如下所示PHP Soap身份验证头599,php,soap,Php,Soap,我是php Soap web服务的新手。我正在尝试创建客户端/服务器机制来交换一些基本数据。这个我已经做了。但是,我需要帮助如何从客户端发送头身份验证详细信息,以及如何在服务器上解析它(例如,用户名、密码和API密钥) 你能给我举个基本的例子吗,我真的很需要。 提前谢谢。希望这对您有所帮助 SOAP客户机语句如下所示 $client = new SoapClient("name.wsdl",array( "trace" => 1, "exceptions" => 0, "l
$client = new SoapClient("name.wsdl",array(
"trace" => 1,
"exceptions" => 0,
"login" => 'xxx',
"password" => 'xxx'));
服务器端
我使用这个PHP语句来验证PHP身份验证头
if(($_SERVER['PHP_AUTH_PW']!= $pass
|| $_SERVER['PHP_AUTH_USER'] != $login)
|| !$_SERVER['PHP_AUTH_USER'])
{
header('WWW-Authenticate: Basic realm="Test auth"');
header('HTTP/1.0 401 Unauthorized');
// OR ANY THING
}
更新
你可以这样使用它
$client = new SoapClient(WSDL,array());
$auth = array(
'UserName'=>'USERNAME',
'Password'=>'PASSWORD',
'SystemId'=> array('_'=>'DATA','Param'=>'PARAM'),
);
$header = new SoapHeader('NAMESPACE','Auth',$auth,false);
$client->__setSoapHeaders($header);
谢谢你的回答。我不确定这是否是使用soap头的身份验证。我说得对吗?