登录响应解析并存储在php、soapclient中的会话中
您好,我有一个项目,我正在使用webservices连接到客户机系统。我已经成功地完成了连接部分。我必须通过默认用户名、密码、dms-id对连接进行身份验证。这一部分我也已成功完成。现在我想把我的登录响应细节放在会话中,这样我就可以根据登录成功的时间进一步编写代码。登录成功后,我将获得登录id和令牌。我想知道我如何才能把这个登录id和令牌放到会话中。我对会话非常陌生。我只是想知道,如果身份验证成功,如何在会话中输入登录详细信息登录id和令牌,以便进一步编写代码。任何想法都将不胜感激 登录请求登录响应解析并存储在php、soapclient中的会话中,php,session,login,soap-client,Php,Session,Login,Soap Client,您好,我有一个项目,我正在使用webservices连接到客户机系统。我已经成功地完成了连接部分。我必须通过默认用户名、密码、dms-id对连接进行身份验证。这一部分我也已成功完成。现在我想把我的登录响应细节放在会话中,这样我就可以根据登录成功的时间进一步编写代码。登录成功后,我将获得登录id和令牌。我想知道我如何才能把这个登录id和令牌放到会话中。我对会话非常陌生。我只是想知道,如果身份验证成功,如何在会话中输入登录详细信息登录id和令牌,以便进一步编写代码。任何想法都将不胜感激 登录请求 $
$wsdl = 'http://www.schwackenet.de/awonline/de/service2/SNWebService.php?wsdl';
$options = array('trace' => true);
$params = array(
'user' => utf8_encode('dessenbeck'),
'password' => utf8_encode('dessenbeck'),
'corporate_group_id' => '101',
'dealer_number' => 'INT31303',
'dms_id' => 'A13T2D19',
'dms_image_url' => '',
'dms_keepalive_url' => '',
'dms_followup_url' => ''
);
$client = new SoapClient($wsdl, $options);
$result = $client->Login($params);
var_dump($result);
?>
登录响应
object(stdClass)[2]
public 'token' => string '974jkp024icpl6q3q9nccrgonq9dv0d1' (length=32)
public 'login_id' => int 6102355
public 'status' =>
object(stdClass)[3]
public 'success' => boolean true
public 'code' => int 0
public 'message' => string '' (length=0)
public 'browserURL' => string '' (length=0)
您需要在文件开头简单添加:
session_start();
然后
$client = new SoapClient($wsdl, $options);
$result = $client->Login($params);
if ($result) { // or if ($result->status->success) {
$_SESSION['login_id'] = $result->login_id;
$_SESSION['token'] = $result->token;
}
将数据保存在会话和
echo $_SESSION['login_id'];
显示来自会话的数据
编辑
我不是Soap专家,但您可能需要运行$client=newsoapclient$wsdl$options;每次,在这种情况下使用会话有什么意义?我认为在这种情况下$\u会话只会作为变量工作,但我可能错了你好,Marcin,谢谢。当然可以,我可以将其转换为会话变量。但是如何将登录id和令牌放入php变量中呢。其登录请求、SOAP客户端中的响应技术..请检查更新的question@user3844830我已经在答案中添加了额外的信息。我认为你的答案是正确的,但我期待着其他的东西。这与SOAP客户端中的登录响应有关。很抱歉,我更新了我的问题位。你能把它作为一个整体删除吗answer@user3844830我再次编辑了它,您可以简单地使用$result->login\u id语法