我目前正在开发一个网站,该网站需要对社交插件网站进行 API 调用以获取用户令牌。使用用户令牌,我可以调用网站的登录窗口并让用户使用他/她的登录凭据登录,以允许我的应用程序获取所需的数据。
当 1) 我对网站进行 API 调用时,2) 它返回带有 XML 格式的用户令牌的 URL,如下所示:
1)
<a href="<?php echo "http://xxxxx.net/api/get_auth_url.xml?akey=$myAppKey" ?>" target="_blank">Login</a>
2)
<?xml version="1.0" encoding="UTF-8"?>
-<auth_token> <url>http://xxxxx.net/api/start_auth?token=7x1x81xfxxxxx5bxxxx3dx45trsda</url> <token>7x1x81xfxxxxx5bxxxx3dx45trsda</token> </auth_token>
但是,我对 PHP 比较陌生,不确定处理返回的 XML 并将网站重定向到“http://xxxxx.net/api/start_auth?token=7x1x81xfxxxxx5bxxxx3dx45trsda”的正确方法是什么。重定向后,我可以让用户登录并获取我需要的信息。
我曾尝试使用 curl 方法,如下所示,但我不熟悉解析 curl_exe() 的结果并使用解析后的值重定向站点。我还不能让它工作,但我认为应该有更多的 php 原生方式来处理返回的 XML 并使用序列化的 XML 对象来重定向网站。
<?php $ch = curl_init(); ?>
<?php curl_setopt($ch, CURLOPT_URL, "http://xxxxx.net/api/get_auth_url.xml?akey=$myAppKey"); ?>
<?php curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); ?>
<?php $store = curl_exec($ch); ?>
<?php curl_close($ch); ?>
任何反馈将不胜感激。WL