FLASK入门flask-sqlalchemy Flask

微信jssdk使用流程 + python +flask做后台获取

2017-05-09  本文已影响519人  Cocoa_Coder

借鉴文章
http://www.mrfangge.com/weixin-jssdk-use-flow/ 微信jssdk使用流程
jssdk的使用流程介绍很详细,这里不再赘述,重点是如何在flask下完成签名
上源码:

#配置 签名(官方给的)

class Sign:
    def __init__(self, jsapi_ticket, url):
        self.ret = {
            'nonceStr': self.__create_nonce_str(),
            'jsapi_ticket': jsapi_ticket,
            'timestamp': self.__create_timestamp(),
            'url': url
        }

    def __create_nonce_str(self):
        return ''.join(random.choice(string.ascii_letters + string.digits) for _ in range(15))

    def __create_timestamp(self):
        return int(time.time())

    def sign(self):
        string = '&'.join(['%s=%s' % (key.lower(), self.ret[key]) for key in sorted(self.ret)])
        print (string)
        self.ret['signature'] = hashlib.sha1(string.encode('utf-8')).hexdigest()
        return self.ret





#flask请求路由方法

@app.route('/jssdkconfig', methods=['GET'])

def jssdk_config():
    HTML_URL = "你的url"
    ticket =" 你的jsapi_ticket"#具体获取方法见最上方连接文章

    sign = Sign(ticket, HTML_URL)
    result = {

        "result":sign.sign()

    }
#响应头 允许跨域访问
    response_heade = {
        'Access-Control-Allow-Origin' : '*'
    }


    return make_response(json.dumps(result).encode("utf-8"),200,response_heade)




上一篇 下一篇

猜你喜欢

热点阅读