# -*- coding: UTF-8 -*- import esigntool import requests from esigntool import esign_run_print_outer # 认证和授权服务API - 实名认证 - 查询类 config = esigntool.Config() # 初始化配置类 # 查询个人认证信息 @esign_run_print_outer def findPsnIdentityInfo(mobile): """ :param mobile:实名用户手机号 :return:请求响应 """ api_path = "/v3/persons/identity-info?psnAccount={}".format(mobile) method = esigntool.httpMethodEnum.GET if mobile == "": print("请设置实名用户个人手机号") exit() # 签名并构造签名鉴权json请求头 json_headers = esigntool.buildSignJsonHeader(config.appId, config.scert, method, esigntool.apiPathSort(api_path)) # 发起请求 resp = requests.request(method, config.host + api_path, json=None, headers=json_headers) print(resp.text) return resp.text # 查询个人授权信息 @esign_run_print_outer def findPsnAuthInfo(psnId): """ :param psnId:实名用户账号ID :return:请求响应 """ api_path = "/v3/persons/{}/authorized-info".format(psnId) method = esigntool.httpMethodEnum.GET # 签名并构造签名鉴权json请求头 json_headers = esigntool.buildSignJsonHeader(config.appId, config.scert, method, esigntool.apiPathSort(api_path)) # 发起请求 resp = requests.request(method, config.host + api_path, json=None, headers=json_headers) print(resp.text) return resp.text # 查询机构认证信息 @esign_run_print_outer def findOrgIdentityInfo(orgName): """ :param orgName:实名企业名称 :return:请求响应 """ api_path = "/v3/organizations/identity-info?orgName={}".format(orgName) method = esigntool.httpMethodEnum.GET # 签名并构造签名鉴权json请求头 json_headers = esigntool.buildSignJsonHeader(config.appId, config.scert, method, esigntool.apiPathSort(api_path)) # 发起请求 resp = requests.request(method, config.host + api_path, json=None, headers=json_headers) print(resp.text) return resp.text # 查询机构授权信息 @esign_run_print_outer def findOrgAuthInfo(OrgId): """ :param OrgId:实名企业账号ID :return:请求响应 """ api_path = "/v3/organizations/{}/authorized-info".format(OrgId) method = esigntool.httpMethodEnum.GET # 签名并构造签名鉴权json请求头 json_headers = esigntool.buildSignJsonHeader(config.appId, config.scert, method, esigntool.apiPathSort(api_path)) # 发起请求 resp = requests.request(method, config.host + api_path, json=None, headers=json_headers) print(resp.text) return resp.text # 查询认证授权流程详情 @esign_run_print_outer def findAuthFlowInfo(flowId): """ :param flowId:实名流程ID :return:请求响应 """ api_path = "/v3/auth-flow/{}".format(flowId) method = esigntool.httpMethodEnum.GET # 签名并构造签名鉴权json请求头 json_headers = esigntool.buildSignJsonHeader(config.appId, config.scert, method, esigntool.apiPathSort(api_path)) # 发起请求 resp = requests.request(method, config.host + api_path, json=None, headers=json_headers) print(resp.text) return resp.text if __name__ == '__main__': if config.appId == "" or config.scert == "": print("请设置应用appId和应用Secret") exit() mobile = "1***" # 请输入个人联系手机号 orgName = "***企业" # 请输入企业名称 findPsnIdentityInfo(mobile) # 查询个人认证信息 findOrgIdentityInfo(orgName) # 查询机构认证信息 psnId = "***" # 请输入个人认证帐号,由【查询个人认证信息】接口返回 OrgId = "***" # 请输入企业认证帐号,由【查询企业认证信息】接口返回 flowId = "***" # 请输入流程ID,由【发起认证&授权】接口返回 findPsnAuthInfo(psnId) # 查询个人授权信息 findOrgAuthInfo(OrgId) # 查询企业授权信息 findAuthFlowInfo(flowId) # 查询认证授权流程详情