如题:
这是在支付宝上面找到的,正如其题,支付宝在微信内置的浏览器中不能使用。只是显示如下提示:
看到这个你心里是不是很不爽,这是个什么的问题。
结果网上一查,发现是一部狗血剧啊。腾讯说阿里单方面停止了对微信公众号的支付接口。
阿里说腾讯在微信中限制了支付宝的使用。
结果呢,结果我也不知道~~~~~~~~
苦逼了我们这些程序员
好吧,问题总是要解决的。
网上一查,还真有解决方案,跟随前人的脚步,我来到了支付宝官网,有啥用。我也不清楚。只是告诉我这里有答案。
好吧,随便点点,突然发现好像有一个帮助中心,还像还有一个搜索框,嘿嘿~~赶紧输入“微信” 神奇的东西出现了
截个图看看:
看到这,我感觉我心中的小天平开始往阿里这边倾斜了。如果真的是阿里单方面停止了支付宝的接口,那为什么会有这样一个解决方案呢。是不是腾讯在撒谎,有可能,绝对有可能。
哎,后来想想也不一定哦,是不是阿里在搞欲擒故纵啊,故意停止支付宝的接口,然后又搞出来一个解决方案,那阿里的心机不可谓不高明啊。
太纠结了,太纠结了~~~~
不管了,先用用阿里的解决方案吧。
用之前我们先看看效果图,往往美好的东西,都会给人一种追求的动力:
这样的一种提示是不是比前面更加的人性化和美观。
好啦,不闲扯了,开始工作:
打开之后,瞬间找到JAVA版。
开始工作,是不是程序员工作之前,都有那么一堆的废话,感觉是。
拿到文档之后,第一个要找的就是文档的切入口在哪里。
其实文档的入口就在index.jsp,这个其实就是一个模拟的支付案例。
只要看他提交到哪里去了就可以了,发现红色部分没,那我们就开始找这个alipayapi.jsp的文件:
里面是一个jsp的servlet.不知道这样说可不可以。
看了这么多,终于找到一个有用的东西(红色部分)。赶紧找到这个类和方法;
这个类在src\com\alipay\util,已经不是jsp了。这个方法用来建立请求,并且是以表单的形式构造的。他带了两个参数一个是Map集合,一个是String类型的。从上面那张图可以看到,map集合里面组装了这个表单要提交的内容。
做到这里是不是感觉没了头脑了,不知道接下来要做什么。
其实我们还有两个很重要的东西没用讲,一个是ap.js和pay.htm。
先来看看pay.htm,其实这个pay.htm显示的就是这张图:
现在问题来了,既然要显示这张图,我们应该怎么跳转到这里,跳转到这里之后怎么按照提示的操作跳转到支付宝支付页面呢。
这两个是好问题,能发现问题就说明你已经开始走在成功的道路上了。
直接看图吧,说多了都是泪:
重点在红色部分ap.js这个文件有一个地方会告诉你他接下来要跳转到的地方:
打开ap.js,拉倒最末尾的地方你会看到这个跳转的地方,其实就是pay.htm:
有需要的同学们可以自行修改这里。
我们再打开pay.htm,里面的内容ap.js就是我们关键的地方:
其实这个demo的重点地方就是ap.js这个文件。