支付宝记---电脑网站支付(.NET)

91 篇文章 6 订阅
24 篇文章 4 订阅

根据商品信息和价格生成支付宝支付的二维码

2019年夏,张渔歌仄伏于家中。越明年,疫情依旧,渔歌隧研究支付宝支付。其中心酸不言表,属予作文以记之。

一、准备工作

1、支付宝开发平台https://open.alipay.com/。需要进行企业级的账号,需要注册主要是营业执照和法人手机。

注册地址:https://certifyweb.alipay.com/certify/reg/guide#/ 注册成功后登陆

2、支付宝商家其实就是支付宝。https://www.alipay.com/ 这个也得是企业用户。

3、支付宝开放平台开发助手,主要是生成公钥和秘94A5

4、电脑端支付demo,下载地址:SDK & Demo 获取 | 网页&移动应用

提供三种语言java net php。目前python还不支持。

二、操作流程

1、登陆支付宝开放平台,进入控制台。找到网页/移动应用,点击创建网页/移动应用。

创建完成后如下图。

应用创建完成后需要配置才可以,应用创建后会分配一个appID,在以后的开发中会使用。

2、配置创建的应用。点击应用会进入到应用的详细页面

2.1应用详情

该页面不需要配置,创建应用的时候已经设定完成

2.2开发设置

该页面是个关键页面,需要配置1处,配置的时候需使用“支付宝开放平台开发助手”

我用的是net所以用的是非java

将生成的公钥配置到开发设置【接口加签方式(密钥/证书)】中即可。其他配置根据自己服务器和软件要求进行相应的配置就可以。

2.3 产量绑定

该页面是核心页面需要配置应用的各项能力,支付宝提供了几十种。我们这里使用电脑网站支付。

选电脑网站支付然后点击确定,这时候在产品绑定页面显示未开通。

点击去开通,这时候跳转至支付宝平台。每个支付的开通不大一样,我这里是电脑网站支付。

网站备案要注意与企业法人的关系而且网站备案的身份信息要准确。

提交后大概1个多小时就审核完毕。审核通过后产品绑定页面也显示已开通。

到这里核心配置就完成了,其实一点也不难,这就是传说中的

会了不难,难了不会~

我研究了进1个月才搞定,当然我仅仅是隔三差五的研究一下 ,也踩了不少的坑这里分享一下。

  1. 支付宝要是企业级的个人的不行
  2. 注册支付宝的时候个人的和企业的要分清
  3. 企业法人也可以注册支付宝但是个人的与企业的要分清
  4. 网页网站上生成产品二维码是电脑端支付,电脑端与手机端支付及其类似一定要分

三、实战

1、咱们先看看支付宝提供的demo

https://opendocs.alipay.com/open/270/106291

 我们下载NET的。alipay.trade.page.pay-DoNet-UTF-8.zip这个文件解压后使用vs2022不能运行,我就自己新建了个项目运行结果看一下。

得引用aopsdk.dll。引用完成后就把配置文件配置一下就可以了。我这里是BaseUI.cs类。内容如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace AliPayMobile
{
    public class BaseUI : System.Web.UI.Page
    {
        // 应用ID,您的APPID 
        public static string app_id = "";

        // 支付宝网关沙箱使用网关:https://openapi.alipaydev.com/gateway.do
        //      正式环境使用网关:https://openapi.alipay.com/gateway.do
        public static string gatewayUrl = "https://openapi.alipay.com/gateway.do";

        // 商户私钥,您的原始格式RSA私钥
        public static string private_key = "2021003N3/hKFEJpOaexLRsSDKliLUw9vRSE2SnC4xdNHGLcNlY05VwIDAQABAoIBAHsUo3GY6N45jLFoyse/v52Z7tokpKDJSk+VJEEA6lQAaDyDte2UUQpVYIMeYdPUIGdY3YGnk1e283KAJZKnnOhxv8obI9iKmJXi6cYgwbrmVQRk/yxVR2NWpXzN9FjRnvmWYqUe7EzAI3qJqVc1bSG9DOQSgPargakmPw7i3iZREtr++c+GpsZojTQT/2i6qCutDNcLjf+04ODIeG7GnUWScCX9mI41gmW7HnsUl4ak0+csPeUZRKhUP6Byj4v1UYOV0HIVuMS4+4d19GOnijCOIvO6BHVUY1J9+IrochDlmH35ObXDNGjrKKVuvj20XPgx74QH2lBSKUnVw5uadoECgYEAxzFNOkeEU/D+OSazHT7d5alMMSVO9bNQVSEEuZ72friHKJoPAPDWNmbdXCgeA51A0H4SeSaeo3NaBmC/otGaFRVStmy+pwJhamGVTZC4aGfs79dsVqbTPN1vL0Oh55jSj8flBGxTc0YfDNTF12g0ROouubAvsRPJIN8GcCnxrOcCgYEAuqCGnE9k+FUoZWA0UHytLaOrz5lbPTl2GWl76CKuzulB+EtOBL/FyFY1mzKLz3bKUVNOL63plSB4HhW9PbCnIVct/bXKWTt3wHdLAQYlx88q7sQghxv8//Q2/jMsnswGjv5YLbBoVSKo9SR8GoWVV3ZA9rjbtAU7fbctjq9TkhECgYEAq3O6P4GzWvVCPTscTP4BzV5toJe2YTIY4U1sXcF/9g8q9z2z0GF8YJMl0d8OBppiYZNCn1kojxQI1xiLmr/DWoZiDXeImwQniYO5GWyJ7gQWI1NPgz5Q8EDBJPOX9lrKUswCSk5bfgtLSqYSLJka9H6F/Xqzcj3PjyWoyv6vcN0CgYEAsykV8QsbEHeYDzI7JqV6Dx1X/DTp7S2znZOxWtmo3YP6S+XnIRIFSlzQm4v7wg/1C/ugTI91dS81gRQ3lvh2icBKq4yQk/dN8BvVikcfj+DnA06PN4V77S/Cd2gjRtLw3Od5OWtnzYs3jhcXeNKS2uLwXKp8aCa5xOdMOfVAkjECgYBi097XwqqHzxZoaCxmknxsHTAoQlH4MCd7A70UFbLhtxaRSfWJO/qEJZ9+SoHlhuel0WOVe+Ag19VdZyRAaXFMJcUEM1zR2NrMF3e3jDNdqR+aZjEXAMuy2W0t/WixosRDVFmMX8Ld67O82T4tfUw2hNomHLHGrqwwns0ybfRDNw==";

        // 支付宝公钥,查看地址:https://openhome.alipay.com/platform/keyManage.htm 对应APPID下的支付宝公钥。
        public static string alipay_public_key = "2021003Xcfvj+DXaZ+4qTxRC6j7oPNJdlNQTYokz010j9CB21ZXavHsHAWrttNQrIqR/un+MsihjrDiQIDAQAB";

        // 签名方式
        public static string sign_type = "RSA2";

        // 编码格式
        public static string charset = "UTF-8";
    }
}

配置项写自己的就可以了。wappay.aspx这个页面是demo的页面原样抄袭就行。

 有图有真相。

2、实践到项目

我的网站地址:亚丁号

实际实现地址:分享116个PHP源码,总有一款适合你

其实需要注意的就是回调地址,其他的和demo中一样。

第一步、引入dll

第二步、编程配置文件

第三步、编写业务文件

    DefaultAopClient client = new DefaultAopClient(gatewayUrl, app_id, private_key, "json", "1.0", sign_type, alipay_public_key, charset, false);
            //return Content(ARTICLE_CODE);
            OrderinfoDataAccess order = new OrderinfoDataAccess();

            string total_amount = articleViewModel.Article.ARTICLE_HID_PRICE.ToString();
            string transaction_no = order.GenerateOrderCode( ARTICLE_CODE);
            string subject = articleViewModel.Article.ARTICLE_TITLE;
   

            // 组装业务参数model
            AlipayTradePagePayModel model = new AlipayTradePagePayModel();
            model.Body = subject; 商品描述
            model.Subject = subject;
            model.TotalAmount = total_amount;
            model.OutTradeNo = transaction_no;
            model.ProductCode = "FAST_INSTANT_TRADE_PAY"; 

            AlipayTradePagePayRequest request = new AlipayTradePagePayRequest();
            // 设置同步回调地址
            request.SetReturnUrl("http://192.168.3.170:9103/pay/alireturn");
            // 设置异步通知接收地址
            request.SetNotifyUrl("");
            // 将业务model载入到request
            request.SetBizModel(model);

            AlipayTradePagePayResponse response = null;
            try
            {
                response = client.pageExecute(request, null, "post");
                //Response.Write(response.Body);
                //return Content(response.Body);
                ViewData["PaymentBody"] = response.Body;
                return View();
            }
            catch (Exception exp)
            {
                throw exp;
            }

到此全部结束。谢谢大家!送老铁一首打油诗

学习知识费力气,

收集整理更不易。

知识付费甚欢喜,

为咱码农谋福利。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

亚丁号

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值