伪古:
def sign_request():
from hashlib import sha1
import hmac
# key = CONSUMER_SECRET& #If you dont have a token yet
key = "CONSUMER_SECRET&TOKEN_SECRET"
# The Base String as specified here:
raw = "BASE_STRING" # as specified by oauth
hashed = hmac.new(key, raw, sha1)
# The signature
return hashed.digest().encode("base64").rstrip('\n')
以下输入用于生成签名基本字符串:
> HTTP方法(例如GET)
>路径(例如http://photos.example.net/photos)
>参数,按字母顺序,如(可读性换行符):
file=vacation.jpg
&oauth_consumer_key=dpf43f3p2l4k3l03
&oauth_nonce=kllo9940pd9333jh
&oauth_signature_method=HMAC-SHA1
&oauth_timestamp=1191242096
&oauth_token=nnch734d00sl2jdk
&oauth_version=1.0
&size=original
连接和URL编码每个部分,它最终为:
GET& http://photos.example.net/photos\u0026amp; file = vacation.jpg&oauth_consumer_key = dpf43f3p2l4k3l03&oauth_nonce = kllo9940pd9333jh&oauth_signature_method = HMAC-SHA1&oauth_timestamp = 1191242096&oauth_token = nnch734d00sl2jdk&oauth_version = 1.0&size = original