验证签名接口
///
/// 验证网关
///
///
[Route("gatewayVerify"), HttpPost, AllowAnonymous, NonUnify]
public async Taskdynamic> gatewayVerify()
{
var Request = App.HttpContext.Request; //获取当前回调的请求
var dict = Request.Form.ToDictionary(x => x.Key, x => x.Value.ToString());
bool result = RSACheck(dict);
if (result)
{
服务器托管网 string singText = $"true";//带签名字段
string sign = AlipaySignature.Sign(singText, app_private_key_PKCS1, "GBK", "RSA2", false);//签名
string refSing = $"true{sign}RSA2";
return refSing;
}
return null;
}
封装SDK中的验签方法
///
/// 验证签名
///
///
///
public static bool RSACheck(IDictionarystring, string> parameters)
{
string charset = "utf-8";
string signType = "RSA2";
if (!string.IsNullOrEmpty(parameters["charset"].ToString()))
{
charset = parameters["charset"].ToString();
}
if (!string.IsNullOrEmpty(parameters["sign_type"].ToString()))
{
signType= parameters["sign_type"].ToString();
}
if (signType== "RSA2")
{
服务器托管网 return AlipaySignature.RSACertCheckV2(parameters, alipayCertPublicKey, charset, signType);
}
else
{
return AlipaySignature.RSACertCheckV1(parameters, alipayCertPublicKey, charset, signType);
}
}
注意
支付宝网关验签文档参考
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
项目工程初始化 安装框架 pip install django 使用命令创建项目 django-admin startproject 项目名称 效果 根目录创建apps用以放置所有包 切换至apps目录创建子应用 python ../manage.py sta…