当前位置: 首页 > news >正文

便宜购物网站大全老网站备案密码错误

便宜购物网站大全,老网站备案密码错误,乡镇可以做门户网站,ps设计网站步骤提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、开发前准备?二、使用步骤1、引入库2、配置在 application.yml 里面进行配置:3、alipay的java配置:AplipayConfig.java4、支付…

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 一、开发前准备?
  • 二、使用步骤
    • 1、引入库
    • 2、配置在 application.yml 里面进行配置:
    • 3、alipay的java配置:AplipayConfig.java
    • 4、支付接口
    • 4、回调接口


一、开发前准备?

easy支付官方文档:https://opendocs.alipay.com/open/009ys9

通用版文档:https://opendocs.alipay.com/open/02np94

支付宝沙箱的配置:
注册支付宝开发者账户,进入开发者控制台

沙箱快捷入口:
https://open.alipay.com/develop/sandbox/app

在这里插入图片描述
沙箱的界面:

在这里插入图片描述

二、使用步骤

1、引入库

<dependency><groupId>com.alipay.sdk</groupId><artifactId>alipay-easysdk</artifactId><version>2.2.2</version>
</dependency>

2、配置在 application.yml 里面进行配置:

#阿里沙箱支付配置
alipay:#签名算法signType: #应用IDappId: #应用私钥appPrivateKey:#支付宝公钥publicKey: #回调地址notifyUrl: 

3、alipay的java配置:AplipayConfig.java

/*** @author :Mr.ZJW* @date :Created 2023/9/20 17:40* @description:alipay沙箱环境配置*/
@Slf4j
@Data
@Component
@ConfigurationProperties(prefix = "alipay")
public class AlipayConfig {/*** appId*/private String appId;/*** 私钥*/private String appPrivateKey;/*** 公钥*/private String publicKey;/*** 回调地址*/private String notifyUrl;/*** 支付宝配置初始化,公钥模式*/@PostConstructpublic void init() {Config config = new Config();//#基础配置config.protocol = "https";  //协议config.gatewayHost = "openapi.alipaydev.com";    //支付宝网关config.signType = "RSA2";   //签名方式//#业务配置config.appId = this.appId;  //应用idconfig.merchantPrivateKey = this.appPrivateKey;    应用私钥config.alipayPublicKey = this.publicKey;    //支付宝公钥config.notifyUrl = this.notifyUrl;  //回调地址Factory.setOptions(config);log.info("支付宝配置初始化完成");}}

4、支付接口

import com.alipay.easysdk.factory.Factory;
import com.alipay.easysdk.payment.page.models.AlipayTradePagePayResponse;
import com.google.common.collect.Maps;
import com.jowell.common.exception.base.BaseException;
import com.jowell.common.response.Result;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;import javax.servlet.http.HttpServletRequest;
import java.util.Map;/*** @author :Mr.ZJW* @date :Created 2023/9/20 17:53* @description:支付controller*/
@Slf4j
@RequestMapping("/alipay")
@Controller
@ResponseBody
public class TestAlipayController {/*** 支付接口** @param subject     名称* @param outTradeNo  订单号* @param totalAmount 金额* @return /*/@GetMapping("/pay")public String pay(String subject, String outTradeNo, String totalAmount) {AlipayTradePagePayResponse response;try {response = Factory.Payment.Page().pay(subject, outTradeNo, totalAmount, "");} catch (Exception e) {log.error("支付宝付款调用失败,原因:" + e.getMessage());throw new BaseException("网络异常,请刷新后重试");}return response.getBody();}

接口测试:
访问URL进行测试,测试的url格式:http://localhost:10000/alipay/pay?subject=支付测试&outTradeNo=D239211000000&totalAmount=1

效果:
在这里插入图片描述
进行用买家账号密码登录:
在这里插入图片描述
输入支付密码进行支付:
在这里插入图片描述

支付成功:
在这里插入图片描述

4、回调接口

回调接口要有一个外网域名,这里可以使用花生壳以及我分享过的一遍文章:
文章链接:https://blog.csdn.net/javaeEEse/article/details/117983797?spm=1001.2014.3001.5502

在这里插入图片描述
把这个域名复制到配置文件里的回调地址上。

回调完整代码:

    /*** 支付宝回调*/@PostMapping("/notify")public Result<String> notify(HttpServletRequest request) {log.info("支付宝回调成功");//校验是否成功if ("TRADE_SUCCESS".equals(request.getParameter("trade_status"))) {//#解析回调数据Map<String, String> params = Maps.newHashMap();Map<String, String[]> requestParams = request.getParameterMap();for (String name : requestParams.keySet()) {params.put(name, request.getParameter(name));}//订单号String tradeNo = params.get("out_trade_no");//支付金额String gmtPayment = params.get("gmt_payment");//支付宝交易凭证号String alipayTradeNo = params.get("trade_no");//#支付宝验签,防止不法分子伪造请求try {Boolean flag = Factory.Payment.Common().verifyNotify(params);if (Boolean.TRUE.equals(flag)) {log.info("交易名称: " + params.get("subject"));log.info("交易状态: " + params.get("trade_status"));log.info("支付宝交易凭证号: " + params.get("trade_no"));log.info("商户订单号: " + params.get("out_trade_no"));log.info("交易金额: " + params.get("total_amount"));log.info("买家在支付宝唯一id: " + params.get("buyer_id"));log.info("买家付款时间: " + params.get("gmt_payment"));log.info("买家付款金额: " + params.get("buyer_pay_amount"));} else {log.error("异步通知验签失败");return Result.error("fail");}} catch (Exception e) {log.error("异步发生异常{}", e.getMessage());return Result.error("fail");}//#进行一些业务逻辑,如更新订单等操作}return Result.success();}
http://www.yayakq.cn/news/451803/

相关文章:

  • 网站多国语言可信的品牌网站建设
  • 论述网站推广的方法与技巧企业网站的建设水平直接关系到网络营销的效果
  • 门户网站的基本功能去哪儿网站做宣传多少钱
  • 一个公司只能备案一个网站吗wordpress 做app
  • 家装网站建设预算保定网站建设公司排名
  • 网站编辑超链接怎么做当今做哪些网站能致富
  • 网站开发要多长时间河南省建设厅专家库
  • 网站建设在那里接单手机挣钱最快的软件
  • 手机网站设计公司只选亿企邦生鲜网站建设的总体目标
  • 网站综合查询工具鄂州网络推广
  • 企业网站优化官网网址提交
  • html网站设计模板下载做微网站常用软件
  • 网站建设合同书相关附件自己制作app软件
  • 怎么修改网站标题一诺网站建设
  • 手机怎么做网站服务器网络营销案例分析和启示
  • 网站后台没有编辑器wordpress版权说明
  • 青岛开发区建网站公司网站建设设计费用摊销年限
  • 做自己网站网站底部图片代码
  • 烟台网站开发安卓安装wordpress
  • html5旅游网站做公司网站注意事项
  • 做外贸收费的网站上海怎么做网站
  • 网站管理人员队伍建设说明材料网站的统计 怎么做
  • 网站域解析查询工商个体户年检网上申报
  • 怎样做微网站河北君卓展览装饰有限公司
  • iis 配置网站 404页面wordpress怎么精简
  • 外链是不是把自己的网站信息发布到别人的网站上?德保网站建设
  • 玩具租赁系统网站开发与实现拼多多网上购物入口
  • 做软件的网站php泉州丰泽建设局网站
  • 做本地网站卖浙江省建设监理协会网站
  • 模板网站有什么不好类似织梦cms