使用Delicious.com API使用OAuth时出现Signature_Invalid错误

时间:2010-09-27 05:19:04

标签: oauth coldfusion delicious-api yahoo-oauth

尝试通过OAuth连接到delicious.com时出现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

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

1 个答案:

答案 0 :(得分:0)

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

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

获取OAuth包,并按照那里的教程/演示进行操作。如果您在线搜索OAuth教程,有几个好的教程。大多数情况下,它们用于Twitter集成,但它们仍然提供了很好的概述。