Exemple #1
0
def wx_userinfo():
    json_dict = request.args
    OpenID = json_dict.get('openid')
    Token = json_dict.get('access_token')

    param = {"access_token": Token, "openid": OpenID}

    r = httpc_util.get(GET_USER_URL, param)
    Result = r.json()
    if Result.has_key("errcode") and int(Result["errcode"]) > 0:
        return jsonify(errcode=Result["errcode"])
    Result["timestamp"] = int(time.time())
    Result["token"] = md5(
        str(Result["unionid"]) + str(Result["timestamp"]) + SECRET_KEY)
    print Result["unionid"], Result["timestamp"], Result["token"]
    return jsonify(Result)
Exemple #2
0
def wx_share_access_token():
    json_dict = request.args
    AppID = json_dict.get('appid')
    WXKey = get_wx_key(AppID)

    WXKey = get_wx_key(AppID)
    if WXKey:
        param = {
            "appid": AppID,
            "grant_type": "client_credential",
            "secret": WXKey
        }

        r = httpc_util.get(SHARE_URL, param)
        return jsonify(r.json())
    else:
        return jsonify(errmsg='appid err')
Exemple #3
0
def wx_refresh():
    json_dict = request.args
    AppID = json_dict.get('appid')
    Token = json_dict.get('refresh_token')

    WXKey = get_wx_key(AppID)
    if WXKey:
        param = {
            "appid": AppID,
            "grant_type": "refresh_token",
            "refresh_token": Token
        }

        r = httpc_util.get(REFRESH_TOKEN_URL, param)
        return jsonify(r.json())
    else:
        return jsonify(errmsg='appid err')
Exemple #4
0
def wx_access():
    json_dict = request.args
    AppID = json_dict.get('appid')
    Code = json_dict.get('code')

    WXKey = get_wx_key(AppID)
    if WXKey:
        param = {
            "appid": AppID,
            "secret": WXKey,
            "code": Code,
            "grant_type": "authorization_code"
        }

        r = httpc_util.get(GET_TOKEN_URL, param)
        return jsonify(r.json())
    else:
        return jsonify(errmsg='appid err')
Exemple #5
0
def pre_pay_after_for_zfb(money, channel, pay_channel, data, callback_url):
	AppID = data["appid"]
	OrderNo = data["orderno"]
	PrivateKey = data["private_key"]
	URL = data["url"]

	## 预创建订单成功
	payload = {
		"app_id":AppID,
		"method":"alipay.trade.precreate",
		"charset":"utf-8",
		"sign_type":"RSA2",
		"timestamp":time_util.formatDateTime(time_util.now_sec()),
		"version":"1.0",
		"notify_url":callback_url,
		"biz_content":json.dumps({
			"out_trade_no":OrderNo,
			"total_amount":"%.2f" % (float(money) / 100),
			"subject":u"会员充值"
			})
	}
	## 重新拼私钥(可能因为提交表单时 把换行符给干掉了) 加上前后一段
	private_key = '''-----BEGIN RSA PRIVATE KEY-----
%s
-----END RSA PRIVATE KEY-----
''' % "\n".join(PrivateKey.split())

	payload["sign"] = httpc_util.gen_sign(payload, private_key, lower = None, sign_type = "RSA2")

	## 发消息给支付宝产生一条订单
	data = httpc_util.get(URL, payload, charset = None)
	jdata = data.json()
	res = jdata['alipay_trade_precreate_response']

	if res["code"] == "10000":
		path = qrcode_util.qc(res["qr_code"])
		return '<html><body><img src="%s" /></body></html>' % path
	else:
		return jsonify(result = "fail", msg = "zfb err")
Exemple #6
0
 def get(self, url, data):
     r = httpc_util.get(self.web_site + url, data, ctype = "json")
     return r