C#支付宝支付接口APP版

首先你需要生成你RSA密钥。

这个密钥一共两个,一个私钥,一个公钥。

公钥用于在你的

蚂蚁金服开放平台

用户中心里生成支付宝公钥。

而支付宝公钥则用于安全验证(接收支付宝支付通知时检验该数据是否来自支付宝的推送。)
以下为生成支付参数的关键后台C#代码。
注意!首先下载这个项目,这是支付宝官方的SDK,你也可以去支付宝开放平台的官网下载。

下载地址:http://download.csdn.net/download/hw1233456/9759306


注意!你的rsa私钥(用文本文档打开)应该是这个样子的


-----BEGIN RSA PRIVATE KEY-----
这里是你的私钥
-----END RSA PRIVATE KEY-----



   string primarkeyRSAPath = Server.MapPath("你的rsa_private_key.pem");

    string app_id = "你的app_id";

            string charset = "utf-8";
            string format = "json";
            string method = "alipay.trade.app.pay";
            string notify_url = "";//后台接收支付宝支付通知的URL地址(需要备案通过的域名)
            string sign_type = "RSA";
            string timestamp = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
            string version = "1.0";
            string timeout_express = "30m";//订单支付超时时间
            string seller_id = "你的seller_id";
            string biz_content = @"{""timeout_express"":""" + timeout_express + @""",""seller_id"":""" + seller_id +
                @""",""product_code"":""QUICK_MSECURITY_PAY"",""total_amount"":""" + "订单金额 例如(0.01)" +
                @""",""subject"":""" + "订单的标题 例如(Iphone8 128G 黑色)" + @""",""body"":""" + "订单详情" +
                @""",""out_trade_no"":""" + "你系统生成的订单唯一编号" + @"""}";
            IDictionary paramsMap = new Dictionary();
            paramsMap.Add("app_id", app_id);
            paramsMap.Add("biz_content", biz_content);
            paramsMap.Add("charset", charset);
            paramsMap.Add("format", format);
            paramsMap.Add("method", method);
            paramsMap.Add("notify_url", notify_url);
            paramsMap.Add("sign_type", sign_type);
            paramsMap.Add("timestamp", timestamp);
            paramsMap.Add("version", version);
            string sign = Aop.Api.Util.AlipaySignature.RSASign(paramsMap, primarkeyRSAPath, "utf-8", "RSA");
            string url = string.Format(
                "app_id={0}&biz_content={1}&charset={2}&format={3}&method={4}¬ify_url={5}&sign_type={6}×tamp={7}&version={8}&sign={9}",
                HttpUtility.UrlEncode(app_id, Encoding.GetEncoding("UTF-8")), HttpUtility.UrlEncode(biz_content, Encoding.GetEncoding("UTF-8")), HttpUtility.UrlEncode(charset, Encoding.GetEncoding("UTF-8")),
                HttpUtility.UrlEncode(format, Encoding.GetEncoding("UTF-8")), HttpUtility.UrlEncode(method, Encoding.GetEncoding("UTF-8")), HttpUtility.UrlEncode(notify_url, Encoding.GetEncoding("UTF-8")),
                HttpUtility.UrlEncode(sign_type, Encoding.GetEncoding("UTF-8")), HttpUtility.UrlEncode(timestamp, Encoding.GetEncoding("UTF-8")), HttpUtility.UrlEncode(version, Encoding.GetEncoding("UTF-8")),
                HttpUtility.UrlEncode(sign, Encoding.GetEncoding("UTF-8")));
            return url;
   string primarkeyRSAPath = Server.MapPath("你的rsa_private_key.pem");

你可能感兴趣的:(Asp.Net,C#,支付宝,支付接口)