#!/usr/bin/env python3 """确认支付合规声明。确认后兑换码可用;在线充值仍要另配支付商户。""" import json import urllib.request BASE = "http://127.0.0.1:3000" def req(method, path, body=None, headers=None, timeout=30): data = None if body is None else json.dumps(body).encode() request = urllib.request.Request(BASE + path, data=data, method=method) request.add_header("Content-Type", "application/json") for key, value in (headers or {}).items(): request.add_header(key, value) with urllib.request.urlopen(request, timeout=timeout) as resp: return json.loads(resp.read().decode()) login = req( "POST", "/api/user/login", {"username": "admin", "password": "L4o4986784$"}, ) auth = { "Authorization": "Bearer " + login["data"]["access_token"], "New-Api-User": "1", } confirmed = req("POST", "/api/option/payment_compliance", {"confirmed": True}, auth) print("compliance", json.dumps(confirmed, ensure_ascii=False)[:400]) info = req("GET", "/api/user/topup/info", headers=auth) data = info.get("data") or {} print( json.dumps( { "enable_online_topup": data.get("enable_online_topup"), "enable_redemption": data.get("enable_redemption"), "payment_compliance_confirmed": data.get("payment_compliance_confirmed"), "pay_methods": data.get("pay_methods"), }, ensure_ascii=False, ) )