Skip to content

常见问题

在调用需要证书的接口时,出现 javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)错误

原因:ssl 握手失败,使用了java.security不支持的版本,换一下最新的JDK即可, 例如 corretto Jdk

支付订单有效期是多久,如何进行设置?

支付订单有效期默认是30分钟,如果超过30分钟,支付订单会自动失效。可以在管理后台设置默认的支付订单有效期。也可以通过调用接口设置支付订单有效期,接口如果传输了过期时间,优先使用接口传入的过期时间。

点击登录时报未开启超级管理员权限错误提示

系统中没有开启超级管理员用户的登录权限,可以在配置文件中设置bootx.starter.auth.enable-admin属性为true,开启超级管理员权限即可。

如何在生产环境关闭Swagger接口文档?

可以在配置文件中设置knife4j.production属性为true,关闭Swagger接口文档。

yaml
knife4j:
  # 开启knife4j接口文档增强特性
  enable: true
  # 是否为生产环境, 为true关闭swagger接口
  production: true

本地运行正常,部署到服务器上报 "/xx/xx" 没有对应的权限错误

通常是Nginx接口转发时路径转发错误,可以查看服务或者Nginx端输出日志,确定路径是否转发正确,根据错误信息修改Nginx配置文件。

微信OAuth2认证和OpenId获取时的一种方案

问题说明

由于微信部分支付类型需要上送OpenId信息,OpenId信息的获取需要走微信OAuth2认证,同时微信OAuth2认证需要使用到授权回调地址只可以配置两个。 多数时候我们一个微信账号会对应多个系统,此时将无法为每个系统配置不同的回调地址,所以我们可以通过重定向的方式来绕过可配置授权回调地址数量的限制,具体方式如下:

  • 使用Nginx起一个转发服务,通过二级目录区分业务系统并进行重定向,如https://nginx.xxxx.com/daxpay/ ,nginx.xxxx.com为Nginx转发服务的地址,daxpay为区分业务系统的二级目录
  • 将这个Nginx服务转发地址配置为微信的授权回调地址中,来处理后续的授权回调请求
  • 在服务商通道配置或支付通道配置中微信OAuth2认证服务地址配置为该地址加用于区分使用的二级目录,后续生成的授权回调地址中经过转发服务进行重定向,从而绕开授权回调地址数量的限制

这里的说明只针对通过DaxPay系统获取OpenId的情况,如果自行获取OpenId,则进行自行处理,但收银台、聚合支付、码牌等网关支付方式将不可以选择使用需要获取OpenId的支付方式

本文档内容版权属于济南易杯光年软件技术有限公司