Esempio n. 1
0
        public async Task <FastPayRsp> ParseFastPayAsync(string content)
        {
            var decodedXml   = JdHelper.Base64Decode(content);
            var chinaBank    = JdHelper.ParseXml <ChinaBank>(decodedXml);
            var exceptedSign = JdHelper.Md5(jdConfig.Version, jdConfig.Merchant, jdConfig.Terminal, chinaBank.Data,
                                            jdConfig.Md5Key);

            if (exceptedSign != chinaBank.Sign)
            {
                throw new BizException("返回结果签名不正确");
            }

            var desDecrypted = JdHelper.DesDecrypt(chinaBank.Data, jdConfig.DesKey);

            return(JdHelper.ParseXml <FastPayRsp>(desDecrypted));
        }