在 QQ 小步伐中利用 qq.requestWxPayment 唤起微信支付(iOS 设备问题) ...

打印 上一主题 下一主题

主题 922|帖子 922|积分 2766

在 QQ 小步伐中利用 qq.requestWxPayment 唤起微信支付(iOS 设备)

配景

按照官方文档写在 安卓 打开是没有问题的。可以正常支付。IOS会报错。走的是fail 。
由于如今小步伐无法唤出浏览器等其他应用。只能开接口本领。web-view方案直接否定。。
QQ文档
属性类型默认值必填说明urlstring是微信支付跳转链接,利用 服务端-同一下单哀求 获取refererstring是商户申请 H5 支付时提交的授权域名(例如 http://q.qq.com ),参考 微信H5支付文档、 申请规则说明successfunction否接口调用乐成的回调函数failfunction否接口调用失败的回调函数completefunction否接口调用竣事的回调函数(调用乐成、失败都会实行)
  1. qq.requestWxPayment({
  2.   url: "",
  3.   referer: "",
  4.   success(res) { },
  5.   fail(res) { }
  6. })
复制代码

解决方案

在 iOS 设备上,qq.requestWxPayment 需要正确通报 referer 和 Referer 参数,以确保微信支付可以大概辨认哀求来源并正常唤起。
在 QQ 小步伐中,利用 qq.requestWxPayment 接口唤起微信支付时,发现 Android 设备可以正常唤起,但 iOS 设备无法唤起。颠末调试,发现关键在于正确通报 referer 和 Referer 参数。
关键点


  • referer 和 Referer 参数

    • 这两个参数的作用是告诉微信支付哀求的来源(即 QQ 小步伐的域名或 URL)。
    • 在 iOS 设备上,微信支付需要验证哀求的来源,因此必须正确通报这两个参数。
    • 注意:referer 和 Referer 都需要通报,可能是由于微信支付在差别环境下对参数的巨细写敏感。
      QQ文档是没有大写的Referer的,多传这个参数便可解决问题。。。

  • url 参数

    • url 是微信支付的 H5 链接,通常由后端生成。
    • redirect_url 是支付完成后跳转的 URL,通常是小步伐的某个页面。

  • 回调函数

    • success:支付乐成后的逻辑。
    • fail:支付失败后的逻辑。
    • complete:支付完成后的逻辑(无论乐成或失败)。

官方例子改成

  1. qq.requestWxPayment({
  2.   url: "",
  3.   referer: "",
  4.   Referer: "",
  5.   success(res) { },
  6.   fail(res) { }
  7. })
复制代码
代码示例

以下是一个完整的代码示例,展示了如何在 QQ 小步伐中利用 qq.requestWxPayment 唤起微信支付,并处理支付结果。
  1. qq.requestWxPayment({
  2.   url: `${h5_url}`,
  3.   referer: HTTP_REQUEST_URL, // 来源域名
  4.   Referer: HTTP_REQUEST_URL, // 来源域名(大小写敏感)
  5.   success: () => {
  6.   },
  7.   fail: (err) => {
  8.     // 支付失败后的逻辑
  9.     console.log('调起支付失败的原因', err);
  10.   },
  11.   complete: (res) => {
  12.     // 支付完成后的逻辑(无论成功或失败)
  13.   }
  14. });
复制代码
参数说明



  • h5_url:微信支付的 H5 链接,由后端生成。
  • HTTP_REQUEST_URL:QQ 小步伐的域名或 URL。

注意事项


  • referer 和 Referer 参数

    • 确保它们的值与微信支付配置中的来源域名一致。
    • 确保它们的巨细写正确。

  • url 参数

    • 确保 url 是有效的微信支付 H5 链接。
    • 确保 redirect_url 是有效的 URL,并且已正确编码。

  • 调试与排查

    • 在 fail 和 complete 回调中打印日记,查抄是否有错误信息。
    • 假如问题无法解决,可以接洽微信支付的技术支持团队,提供详细的日记和复现步调。


总结

通过正确通报 referer 和 Referer 参数,可以在 iOS 设备上乐成唤起微信支付。本文提供了完整的代码示例和注意事项,资助开辟者快速实现 QQ 小步伐中的微信支付功能。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

温锦文欧普厨电及净水器总代理

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表