本文整理汇总了Python中wechat_sdk.WechatBasic.generate_jsapi_signature方法的典型用法代码示例。如果您正苦于以下问题:Python WechatBasic.generate_jsapi_signature方法的具体用法?Python WechatBasic.generate_jsapi_signature怎么用?Python WechatBasic.generate_jsapi_signature使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类wechat_sdk.WechatBasic
的用法示例。
在下文中一共展示了WechatBasic.generate_jsapi_signature方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_generate_jsapi_signature
# 需要导入模块: from wechat_sdk import WechatBasic [as 别名]
# 或者: from wechat_sdk.WechatBasic import generate_jsapi_signature [as 别名]
def test_generate_jsapi_signature(self):
noncestr = 'Wm3WZYTPz0wzccnW'
jsapi_ticket = 'sM4AOVdWfPE4DxkXGEs8VMCPGGVi4C3VM0P37wVUCFvkVAy_90u5h9nbSlYy3-Sl-HhTdfl2fzFy1AOcHKP7qg' # NOQA
timestamp = 1414587457
url = 'http://mp.weixin.qq.com?params=value'
# 测试无 appid 和 appsecret 初始化
wechat = WechatBasic()
with self.assertRaises(NeedParamError):
wechat.generate_jsapi_signature(timestamp=timestamp, noncestr=noncestr, url=url)
# 测试有 appid 和 appsecret 初始化
wechat = WechatBasic(appid=self.appid, appsecret=self.appsecret)
with HTTMock(wechat_api_mock):
signature = wechat.generate_jsapi_signature(timestamp=timestamp, noncestr=noncestr, url=url, jsapi_ticket=jsapi_ticket)
self.assertEqual(signature, '0f9de62fce790f9a083d5c99e95740ceb90c27ed')
示例2: __init__
# 需要导入模块: from wechat_sdk import WechatBasic [as 别名]
# 或者: from wechat_sdk.WechatBasic import generate_jsapi_signature [as 别名]
class WeixinMananger:
def __init__(self, appid="wxc2b14fc7557dc863", appsecret="67c0097d1bf2f7804f9eb2375f3d2039",
redisIp="127.0.0.1", redisPort=6379):
self.redis = redis.StrictRedis(host=redisIp)
self.appid = appid;
self.appsecret = appsecret;
self.wechat = WechatBasic(appid=appid, appsecret=appsecret);
def __getRedisWXAccessToken(self):
return self.redis.get("wx_access_token")
def __getRedisWXJsApiToken(self):
return self.redis.get("wx_jsapi_token")
def getAccessToken(self):
token = self.__getRedisWXAccessToken()
if token is None:
token = self.wechat.grant_token()
if token != None:
timeout = token["expires_in"]
self.redis.setex("wx_access_token", timeout, token["access_token"])
return token["access_token"]
else:
return None;
else:
return token
def getJsApiToken(self):
ticket = self.__getRedisWXJsApiToken()
if ticket is None:
print self.getAccessToken()
ticket = self.wechat.grant_jsapi_ticket()
if (ticket != None):
timeout = ticket["expires_in"];
self.redis.setex("wx_jsapi_token", timeout, ticket["ticket"])
return ticket["ticket"]
else:
return None
else:
return ticket
def getJsJDK(self, srcUrl):
timestamp = int(time.time())
noncestr = str(time.time())
url = srcUrl
jsApiToken = self.getJsApiToken();
data = {};
data["timestamp"] = timestamp
data["nonceStr"] = noncestr
data["appId"] = self.appid
data["signature"] = self.wechat.generate_jsapi_signature(timestamp, noncestr, url, jsApiToken)
data["jsApiList"] = ["openLocation", "getLocation", "scanQRCode", "showMenuItems"]
data["debug"] = True
return data
示例3: generate_jsapi_signature
# 需要导入模块: from wechat_sdk import WechatBasic [as 别名]
# 或者: from wechat_sdk.WechatBasic import generate_jsapi_signature [as 别名]
def generate_jsapi_signature(url):
ticket, expired_at = get_jsapi_ticket()
b = WechatBasic(
appid=settings.app_id, appsecret=settings.secret, jsapi_ticket=ticket, jsapi_ticket_expires_at=expired_at
)
timestamp = int(round(time.time()))
nonce = random.randint(10000000, 99999999)
print "generate signature at:", datetime.datetime.now()
signature = b.generate_jsapi_signature(timestamp, nonce, url, jsapi_ticket=ticket)
return {"appId": settings.app_id, "timestamp": timestamp, "nonceStr": nonce, "signature": signature}
示例4: generate_jsapi_signature
# 需要导入模块: from wechat_sdk import WechatBasic [as 别名]
# 或者: from wechat_sdk.WechatBasic import generate_jsapi_signature [as 别名]
def generate_jsapi_signature(url):
ticket, expired_at = get_jsapi_ticket()
b = WechatBasic(
appid=settings.APP_ID,
appsecret=settings.SECRET,
jsapi_ticket=ticket,
jsapi_ticket_expires_at=expired_at)
timestamp = int(round(time.time()))
nonce = random.randint(10000000, 99999999)
print 'generate signature at:', datetime.datetime.now()
signature = b.generate_jsapi_signature(
timestamp, nonce, url, jsapi_ticket=ticket)
return {
'appId': settings.APP_ID,
'timestamp': timestamp,
'nonceStr': nonce,
'signature': signature,
}