日期:2014-05-17  浏览次数:20576 次

sina微博oAuth phpSDK callback.php取不到$_SESSION['keys']!!
如题 callback.php页面中
$o = new WeiboOAuth( WB_AKEY , WB_SKEY , $_SESSION['keys']['oauth_token'] , $_SESSION['keys']['oauth_token_secret'] );

$last_key = $o->getAccessToken( $_REQUEST['oauth_verifier'] ) ;
报错!

经查错发现 $_SESSION['keys']不存在,但是我在index.php页面已经赋值了
$o = new WeiboOAuth( WB_AKEY , WB_SKEY );
$_SERVER["SCRIPT_URI"]='http://183.191.213.13:80';
$keys = $o->getRequestToken();
$aurl = $o->getAuthorizeURL( $keys['oauth_token'] ,false , $_SERVER['SCRIPT_URI'].'/callback.php');

$_SESSION['keys'] = $keys;
这里是有值的。。已经改了 utf-8 无bom编码 还是出错! 求解。。

------解决方案--------------------
要session_start
------解决方案--------------------
注意callback页面的域名和你访问session信息的页面的域名是否不同,需要设置SESSION COOKIE的domain。