Exemplo n.º 1
0
        private static string ToBaseString(FubeiApiCommonResult <string> responseResult, string appSecret)
        {
            var map = new Dictionary <string, string>
            {
                { "result_code", responseResult.ResultCode },
                { "result_message", responseResult.ResultMessage },
                { "data", responseResult.Data }
            };

            return(ToBaseString(map, appSecret));
        }
        public string Index([FromForm] FubeiApiCommonResult <string> notify, [FromForm(Name = "sign")] string sign)
        {
            var valid = FubeiSignatureService.VerifyFubeiNotification(notify, sign);

            if (valid)
            {
                Logger.LogInformation("Notification [VALID] => {0}, Sign: {1}", JsonConvert.SerializeObject(notify), sign);
            }
            else
            {
                Logger.LogWarning("Notification [INVALID] => {0}, Sign: {1}", JsonConvert.SerializeObject(notify), sign);
            }
            return("SUCCESS");
        }
 /// <summary>
 /// 验证签名
 /// </summary>
 /// <param name="result"></param>
 /// <param name="sign"></param>
 /// <returns></returns>
 public bool VerifyFubeiNotification(FubeiApiCommonResult <string> result, string sign)
 {
     return(FubeiSignatureUtil.Verify(result, _applicationConfiguration.AppSecret, sign));
 }
Exemplo n.º 4
0
        /// <summary>
        /// 签名验证
        /// </summary>
        /// <param name="result"></param>
        /// <param name="appSecret"></param>
        /// <param name="sign"></param>
        /// <returns></returns>
        public static bool Verify(FubeiApiCommonResult <string> result, string appSecret, string sign)
        {
            var signExpected = Hash(ToBaseString(result, appSecret));

            return(signExpected.Equals(sign, StringComparison.OrdinalIgnoreCase));
        }
Exemplo n.º 5
0
 public FubeiNotificationParam(FubeiApiCommonResult <string> data)
 {
     Data          = data.Data;
     ResultCode    = data.ResultCode;
     ResultMessage = data.ResultMessage;
 }