2011-08-08 111 views
2

我得到了令牌验证,我无法获得访问令牌。没有获取访问令牌谷歌oauth

当我发送给该链路的请求:/accounts/OAuthGetAccessToken
来自服务器的响应是:

无效的字符串:基底线上。

无法猜测出了什么问题

这是我发送创建签名参数:

$arrParam = array('oauth_consumer_key'=>$this->strConsumerKey,'oauth_nonce'=>$this->strOauthNonce,'oauth_signature_method'=>'HMAC-SHA1','oauth_timestamp'=>$this->strTimestamp,'oauth_version'=>'1.0','scope'=>rawurlencode('http://finance.google.com/finance/feeds/'),'oauth_callback'=>rawurlencode('http://www.finfore.com/prem_test/google.php')); 

而这些都是后场我发送:

$strPostField = 'oauth_consumer_key='.urlencode($this->strConsumerKey).'&oauth_signature_method=HMAC-SHA1&oauth_signature='.urlencode($strSignature).'&oauth_timestamp='.$this->strTimestamp.'&oauth_nonce='.$this->strOauthNonce.'&oauth_version=1.0&scope='.urlencode('http://finance.google.com/finance/feeds/').'&oauth_callback='.urlencode('http://www.finfore.com/prem_test/google.php'); 
+0

编辑您的问题添加一些代码 –

+0

Coud您发布的代码你正在使用创建签名基础字符串?或者你正在发送的标题? – maartencls

回答

0

你能发布你的请求/响应头文件吗?您可以使用Google Chrome中的开发人员工具抓取这些(网络标签),或者在Firefox中使用firebug之类的东西。

比较你的头与生成的:Google OAuth Playground

可能还需要设置GData-Version: 3.0作为附加请求头 - 不是真的应该当/为什么这是必需的,但我相信一些谷歌API的要求它。

你总是可以尝试使用一个库,而不是,像OAuth-PHP,方案和示例代码可以在这里找到:OAuth Code

希望帮助

相关问题