/// <summary>
        /// 解除用户授权关系(openid)接口
        /// <para>通过openid, 商户解除用户授权关系</para>
        /// <para>更多详细请参考 https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter6_1_6.shtml </para>
        /// </summary>
        /// <param name="data">微信支付需要POST的Data数据</param>
        /// <param name="timeOut">超时时间,单位为ms</param>
        /// <returns></returns>
        public async Task <ReturnJsonBase> TerminatePermissionByOpenidAsync(TerminatePermissionByOpenidRequestData data, int timeOut = Config.TIME_OUT)
        {
            var url = ReurnPayApiUrl($"https://api.mch.weixin.qq.com/{{0}}v3/payscore/permissions/openid/{data.openid}/terminate");
            TenPayApiRequest tenPayApiRequest = new(_tenpayV3Setting);

            return(await tenPayApiRequest.RequestAsync <ReturnJsonBase>(url, data, timeOut));
        }
Exemple #2
0
        public void TerminatePermissionByOpenidAsyncTest()
        {
            var key          = TenPayHelper.GetRegisterKey(Config.SenparcWeixinSetting);
            var TenPayV3Info = TenPayV3InfoCollection.Data[key];

            //TODO:服务id获取 请阅读 https://pay.weixin.qq.com/wiki/doc/apiv3/open/pay/chapter3_1_1.shtml
            var serviceId   = "{serviceId}";
            var requestData = new TerminatePermissionByOpenidRequestData(openId, serviceId, TenPayV3Info.AppId, "Senparc接口单元测试");

            PayScoreApis payScoreApis = new PayScoreApis();
            var          result       = payScoreApis.TerminatePermissionByOpenidAsync(requestData).GetAwaiter().GetResult();

            Console.WriteLine("微信支付 V3 解除用户授权关系(openid)测试:" + result.ToJson(true));

            Assert.IsNotNull(result);
            Assert.IsTrue(result.ResultCode.Success);
            Assert.IsTrue(result.VerifySignSuccess == true);//通过验证
        }