下面的代码处理通过PHP连接到LInkedIn API的问题,在我添加国际化、更改URL和添加重定向之前,它在很长一段时间内一直运行良好。
我修复了URL,所以除了/en/ language段之外,它们都是不变的。
在LinkedIn上授权后,我仍然得到未定义的索引错误,但我在浏览器的链接中看到了变量。
我不明白的是,当oauth_token或oauth_verifier出现在网址中时,$_REQUEST为什么看不到它们呢?
第一个错误:未定义索引: oauth_verifier
链接:
http://www.youinapage.com/en/linklogin/get_resume_linkedin?oauth_token=e68974fc-5ba9-41d8-bc2f-9b33a5e59961&oauth_verifier=07539
代码示例:
session_start();
$this->load->library('format');
$config['linkedin_access'] = "---";
$config['linkedin_secret'] = "---";
$config['base_url'] = site_url('linklogin/initiate/');
$config['callback_url'] = site_url('linklogin/get_resume_linkedin/');
# First step is to initialize with your consumer key and secret. We'll use an out-of-band oauth_callback
$linkedin = new LinkedIn($config['linkedin_access'], $config['linkedin_secret'], $config['callback_url'] );
//$linkedin->debug = true;
if (isset($_REQUEST['oauth_verifier'])){
$_SESSION['oauth_verifier'] = $_REQUEST['oauth_verifier'];
$linkedin->request_token = unserialize($_SESSION['requestToken']);
$linkedin->oauth_verifier = $_SESSION['oauth_verifier'];
$linkedin->getAccessToken($_REQUEST['oauth_verifier']);
$_SESSION['oauth_access_token'] = serialize($linkedin->access_token);
header("Location: " . $config['callback_url']);
exit;
}
else{
$linkedin->request_token = unserialize($_SESSION['requestToken']);
$linkedin->oauth_verifier = $_SESSION['oauth_verifier']; //GENERATE INITIAL ERROR
$linkedin->access_token = unserialize($_SESSION['oauth_access_token']);
}发布于 2012-05-17 04:14:09
我认为问题不是来自$_REQUEST,而是来自$_SESSION。
如果您仔细查看错误输出,它会显示第一个错误为on
$_SESSION['requestToken']然后确实,引擎也会在
$_SESSION['oauth_verifier']未知的原因,但这意味着一个肯定不同的问题,(我认为)
Rgds。
https://stackoverflow.com/questions/10625857
复制相似问题