2010-09-27 31 views
0

尝试通过OAuth连接到delicious.com时出现signature_invalid错误。使用OAuth和Delicious.com API的Signature_Invalid错误

<cfset oUrl = "https://api.login.yahoo.com/oauth/v2/get_request_token"/> 
<cfset oauth_nonce = "?oauth_nonce="&randrange(45678,99999)/> 
<cfset oauth_timestamp = "&oauth_timestamp=122253373"/> 
<cfset oauth_consumer_key = "&oauth_consumer_key="&URLEncodedFormat('dj0yJrvVRvrvrvRVRvvRVervNVFEyTlRFeU5qTTrverVERVERVervervRT4r34r34fgjj--')/> 
<cfset oauth_signature_method = "&oauth_signature_method=plaintext"/> 
<cfset oauth_signature = "&oauth_signature="&URLEncodedFormat('f28revcevERVrv4f3vVrfr1hgvcWJc112bb0f74Tu')/> 
<cfset oauth_version = "&oauth_version=1.0"/> 
<cfset xoauth_lang_pref = "&xoauth_lang_pref=en-us"/> 
<cfset oauth_callback = "&oauth_callback=http://www.example.com/del/t1.cfm"/> 

<cfset my1 = oUrl&oauth_nonce&oauth_timestamp&oauth_consumer_key&oauth_signature_method&oauth_signature&oauth_version&xoauth_lang_pref&oauth_callback/> 

我在做什么错?为了验证,我使用消费者密钥作为我的oauth_consumer_key和消费者密码作为我的oauth_signature

(这些不是我的实际钥匙,我修改了它们。)

回答

0

不要重新发明车轮。 CF中有一个很好的OAuth库:http://oauth.riaforge.org/index.cfm

我可以继续告诉你,你的消费者密钥和秘密不同于密钥和签名。它们用于创建签名,然后将其与消费者密钥一起使用。

获取OAuth包,并按照教程/演示。如果您在线搜索OAuth教程,有几个很好的教程。大多数情况下,他们是用于Twitter整合的,但他们仍然给出了一个很好的概述。