微信小程序实现支付宝支付——web-view实现

这篇具有很好参考价值的文章主要介绍了微信小程序实现支付宝支付——web-view实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


效果图

前言

由于使用到的微信小程序需要实现支付功能,而微信支付的申请手续较为繁琐,所以使用了支付宝支付,但是微信小程序正常情况不支持支付宝支付,所以我使用了web-view内嵌了支付宝的h5支付。


1.Springboot支付宝沙箱支付:

不会使用支付宝沙箱支付的同学可以看这篇文章Springboot支付宝沙箱支付

#支付宝环境
alipay:
  url: https://openapi.alipaydev.com/gateway.do
  app_id: 商户号
  app_private_id: 商户私钥
  format: json
  charset: UTF-8 
  alipay_public_key: 商户公钥
  sign_type: RSA2
  return_url: 支付完成后的地址
  notify_url: 回调地址


    @RequestMapping("/paytest")
    @IgnoreAuth
    public   void   alipay (HttpServletRequest httpRequest,
                            HttpServletResponse httpResponse)   throws IOException {



        //获得初始化的AlipayClient
        AlipayClient alipayClient =  new DefaultAlipayClient( Constant.URL , Constant.APP_ID, Constant.APP_PRIVATE_KEY, Constant.FORMAT,
                Constant.CHARSET, Constant.ALIPAY_PUBLIC_KEY, Constant.SIGN_TYPE);
        //创建API对应的request
        AlipayTradePagePayRequest alipayRequest =  new  AlipayTradePagePayRequest();
        alipayRequest.setReturnUrl(Constant.RETURNURL);
        //在公共参数中设置回跳和通知地址
        alipayRequest.setNotifyUrl(Constant.NOTIFYURL);
        String outTradeNo = RandomUtil.randomNumbers(15);
        String totalAmount = "88.8";
        alipayRequest.setBizContent( "{"  +
                "    \"out_trade_no\":\""+outTradeNo+"\","  +
                "    \"product_code\":\"FAST_INSTANT_TRADE_PAY\","  +
                "    \"total_amount\":"+totalAmount+","  +
                "    \"subject\":\"Iphone6 16G\","  +
                "    \"body\":\"Iphone6 16G\","  +
//                "    \"passback_params\":\"merchantBizType%3d3C%26merchantBizNo%3d2016010101111\","  +
                "    \"extend_params\":{"  +
                "    \"sys_service_provider_id\":\"2088511833207846\""  +
                "    }" +
                "  }" );
        //填充业务参数
        String form= "" ;
        try  {
            //调用SDK生成表单
            form = alipayClient.pageExecute(alipayRequest).getBody();
        }  catch  (AlipayApiException e) {
            e.printStackTrace();
        }
        httpResponse.setContentType( "text/html;charset="  +  Constant.CHARSET);
        //直接将完整的表单html输出到页面
        httpResponse.getWriter().write(form);
        httpResponse.getWriter().flush();
        httpResponse.getWriter().close();
    }

2.小程序拉起支付

代码如下:

<web-view src="http://localhost:8080/back/app/alipay/paytest" > </web-view>

到此处小程序可以完成支付,但是却无法返回到小程序目标界面,只能到返回return_url的web界面


3.web界面返回小程序

我们可以通过访问一个使微信小程序重定向的h5界面,来让小程序返回到目标界面

代码如下:

<!-- h5端 HTML和JS -->
<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>
<script>
     wx.miniProgram.redirectTo({
     //url 为小程序的目标界面
      url:"/pages/inner/index?source=123"
     })

</script>

这时只要将return_url改为此界面的地址即可。文章来源地址https://www.toymoban.com/news/detail-510335.html


到了这里,关于微信小程序实现支付宝支付——web-view实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp微信小程序嵌入页面web-view配置

    uniapp开发微信小程序的时候, 有时候需要嵌入H5页面 可以使用小程序自带的  web-view  组件相当于 HTML页面中的 iframe  1.配置业务域名 开发管理 ---开发设置 ---业务域名   然后去配置你的业务域名就可以了   2.页面中使用 web-view 使用起来还是很方便的 uniapp提供属性可以具体

    2024年02月11日
    浏览(47)
  • 微信小程序组件、web-view、h5之间交互

    目录结构 小程序 /pages/index/index.wxml /pages/index/index.js /pages/index/index.json 组件 /component/index-page/index.wxml /component/index-page/index.js /component/index-page/index.json web-view /pages/web/web.wxml /pages/web/web.js h5

    2023年04月16日
    浏览(55)
  • 微信小程序在web-view页面增加一个按钮

    需求: 在微信小程序中通过web-view打开H5页面,需要小程序端在页面中增加一个可以请求接口的按钮 实现方法 通过在web-view中嵌套cover-view标签来实现( 注意: cover-view只支持嵌套 cover-view、cover-image,可在 cover-view 中使用 button,但是本人在里面使用button标签时,对button添加样式无效

    2024年02月07日
    浏览(56)
  • 使用web-view在微信小程序中显示网页

    比如要在小程序中显示《用户协议》《隐私政策》等网页内容,可以直接用web-view显示 如下代码所示 打开的页面标题显示的是网页的标题,也就是title标题/title标签中的内容 最后,记得在小程序后台开发管理中添加业务域名,把要访问的网址添加到业务域名中,否则小程序发

    2024年02月15日
    浏览(52)
  • 微信小程序跳转公众号文章 web-view方式

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 提示:这里可以添加本文要记录的大概内容: 小程序和公众号都必须时企业认证的 1.在小程序里面关联相关的公众号 2.在公众号里面关联相关的小程序 提示:以下是本篇文章正文内容,下面案例可供参

    2024年02月09日
    浏览(57)
  • 微信小程序使用web-view,内嵌跳转h5踩坑记!!

    由于业务需要在微信小程序内,嵌入外网h5到小程序,项目整体在开发,调试完成都没有任何问题,但是,在部署到测试环境之后,跳转h5报如下错误:   通过查阅官方文档,以及各类技术文档,报错的原因是,没有在微信公众平台配置业务域名和合法域名;具体操作步骤 【

    2024年02月08日
    浏览(46)
  • 关于微信小程序<web-view>组件跳转报错问题-解决!

    报错以上的问题 尝试了好久--发现的问题-官网上文章看完了也没有看到   当点击 itemClick1 的时候 就报以上的 错误 当点击 itemClick2 的时候就能成功 跳转 原因是:  itemClick1和当前跳转的位置是同级,应该是web-view组件不能跳转到同级以外的地方! 总结:  所有想要使用 web-view 组

    2024年02月16日
    浏览(41)
  • 微信小程序web-view环境下H5跳转小程序页面方法

    一般的,web-view组件的src属性指定的H5页面之间,可以正常的采用超级链接a标记对进行页面之间的条转。但是web-view页面要想通过手指触碰返回小程序页面,就无法使用超级链接a标记了。那么这个问题应该如何解决呢? 首先需要在H5页面中引入JSSDK,它可以让H5页面的js文件执

    2024年01月17日
    浏览(46)
  • 微信小程序-web-View使用以及跟小程序的通信传值

    简单来说 就是小程序嵌套H5页面 web-view 官网地址 不需要在这个页面做修饰,H5页面会自动铺满 bindmessage属性用来绑定从H5传值过的函数; 注意:传给H5的数据只能拼接在url后面 代码如下(示例): 接收 h5 页面传递过来的参数 代码如下(示例): 向小程序发送消息,会在特定

    2024年02月11日
    浏览(53)
  • 微信小程序通过web-view网页授权获取用户公众号OpenID

    第一步: 通过该地址 https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfot=sandbox/index 获取到微信公众号测试号AppID与appsecret (测试公众号可以测试使用,个人公众号不允许使用。微信认证服务号可以使用,微信认证订阅号不可以使用)。 接口权限查看链接: https://developers.weix

    2024年02月08日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包