OAuth的握手复制错误
问题描述:
我试图建立与Copy的API REST的PoC但我有一个问题,当我试图让访问令牌:OAuth的握手复制错误
消息:oauth_problem = signature_invalid & debug_sbs = GET & HTTPS% 3A%2F%2Fapi.copy.com%...
@app.route('/get_access_token')
def get_access_token():
print "Get Access Token"
oauth_verifier = request.args['oauth_verifier']
oauth_token = request.args['oauth_token']
print oauth_token + " & " + oauth_verifier
# Create your consumer with the proper key/secret.
consumer = oauth.Consumer(key=CONSUMER_KEY, secret=CONSUMER_SECRET)
print "Consumer: ", consumer
client = oauth.Client(consumer)
url = access_url + "?oauth_verifier=%s&oauth_token=%s" % (oauth_verifier, oauth_token)
print url
resp, content = client.request(url, "GET")
print "Resp: ", resp
print "Content: ", content
return content
我将不胜感激任何帮助。
答
我已经能够解决我自己的问题。问题是创建一个新的消费者(我有一个用于oauth握手的第一步),而不是使用库提供的oauth.Token(我把oauth_verifier和oauth_token用一个解决方法)
解决方案:
@app.route('/get_access_token')
def get_access_token():
print "Get Access Token"
try:
oauth_verifier = request.args['oauth_verifier']
oauth_token = request.args['oauth_token']
print oauth_token + " & " + oauth_verifier
token = oauth.Token(oauth_token, request_token_secret) # request_token_secret is global
token.set_verifier(oauth_verifier)
client = oauth.Client(consumer, token) #consumer is global
url = "https://api.copy.com/oauth/access"
resp, content = client.request(url, "GET")
print "Resp: ", resp
print "Content: ", content
return content
except Exception as e:
return e.message()
我有同样的问题。这里是我的代码\t \t \t String authorization = String.format(“OAuth oauth_version = \”1.0 \“,oauth_signature_method = \”PLAINTEXT \“,oauth_consumer_key = \”%s \“,oauth_token = \”%s \“, oauth_signature = \ “%S&%s \” 的,oauth_nonce = \ “%s \” 的,oauth_timestamp = \ “%s \” 的”, \t \t Constants.COPY_CONSUMER_KEY, \t \t oauthToken,Constants.COPY_SECRET, \t \t tokenVerifier , \t \t uuid, \t \t String.valueOf(Calendar.getInstance()。getTimeInMillis())); – 2015-03-04 15:44:14
我的代码有什么问题,我正在使用相同的使用者密钥,如果我更改它,它会给出错误无效密钥。我的签名是秘密和验证者的混合物 – 2015-03-04 15:45:00
分享你的格式化的代码,我会尽力帮助你。 – mendrugory 2015-03-04 16:09:09