有比微信公众平台技术文档更 ZZ 的文档吗?

2017-12-14 12:54:10 +08:00
 oldcai
每次对接微信的接口,都屁股疼

比如这个:
https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_4
获取 openid
里面指向的 4 条连接都没讲如何获取 openid

JSAPI 支付必须提交 openid
登录的"网站应用"没有支付权限的申请
可申请支付商号的公众号又没有登录 scope 的权限

感觉他们设计的是一个密室跳脱解密的扯淡游戏
10095 次点击
所在节点    程序员
73 条回复
azh7138m
2017-12-14 12:59:50 +08:00
比如七牛上传的文档?

https://developer.qiniu.com/kodo/manual/1272/form-upload

支持 https 的域名是 up.qbox.me ,还是我从他们 github 里面翻出来的:)
weixiangzhe
2017-12-14 13:07:05 +08:00
同意
oldcai
2017-12-14 13:09:49 +08:00
@azh7138m 真的吗,来来,如果你经历坎坷,从翔一样的文档中,发现这样一个秘密:

JSAPI 支付需要 openid
同一个用户每个 app id 对应的 openid 不同
登录的 app 没有支付权限
支付的 app 没有登录权限
支付 app 只能绑定微信公号
登陆 app 没有开通支付权限的选项

会不会想找包方便面捏碎
wibile
2017-12-14 13:10:24 +08:00
有,阿里的文档更烂!阿里云文档乱成一团,要找半天。淘宝开放平台的文档跟 shit 一样。。。
BOYPT
2017-12-14 13:10:50 +08:00
只是链接失效了,你翻翻菜单里面章节还是有的。
klgd
2017-12-14 13:18:19 +08:00
有,qq 的文档
qiayue
2017-12-14 13:25:46 +08:00
建议搞清楚整个登录流程,不要着急,气急败坏解决不了任何问题

文档中有些链接变化了,所以点击后跳回了文档首页,建议直接在文档做成菜单栏查找资料

如果你要用微信服务号来做微信支付,那么两种方式可以获取 openid:
1、用户关注服务号,或者发消息给服务号,微信服务器调用你的服务端接口,都会携带 FromUserName,就是发送放的 openid,见 https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140453
2、使用网页授权接口,用户同意之后可以得到 openid,见 https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842

再然后用 jssdk 的 wx.chooseWXPay 就可以发起一个支付请求,在发起支付请求之前,你需要 ajax 到自己服务器,通过统一下单接口向微信服务器下单,得到 prepay_id
https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_1

我反而觉得微信文档写得很详细,所以想要的东西都能够找到,当然前提是你需要了解业务流程,很多文档都化了业务流程时序图
qiayue
2017-12-14 13:27:36 +08:00
不同的 app 通过在 open.wx.qq.com 绑定到同一个开发者账号,可以得到 unionid 来确定同一个用户
qiayue
2017-12-14 13:28:33 +08:00
liuzhedash
2017-12-14 13:33:58 +08:00
如果之前对接过微信的接口,openid 的机制应该不难理解。jsapi 调起微信支付的场景里,通常是网页授权获取用户信息时拿到 openid 的,参考文档:
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842
Qlccks2
2017-12-14 13:35:00 +08:00
顺丰
liuzhedash
2017-12-14 13:36:48 +08:00
我认为微信的文档做得还是不错的,比阿里的要强不少。任何文档都不可能正好按照你的疑问来组织内容,高效地阅读理解文档是值得练习的能力。
qiayue
2017-12-14 13:37:52 +08:00
微信支付方式有:
刷卡支付、公众号支付、扫码支付、APP 支付、H5 支付、小程序支付

你可能能用的到的是公众号支付和 APP 支付
其中公众号支付必须是服务号,服务号只要认证了就有网页授权登录权限,开通微信支付就可以有支付权限
APP 支付在微信开放平台创建移动应用之后,可以申请开通支付能力

你的问题在于读的太少而气得太多
oldcai
2017-12-14 13:39:57 +08:00
@qiayue unionid 实现登录的时候已经做过,不然无法合并 app 登录和 web 登录的用户。
但是 unionid 并不能用于支付。
openid 不需要用户同意授权才能获取,但是如果是这样,我总觉得有更好的办法获取到,而不需要跳授权的流程。
目前方法是找到了,以 snsapi_base 为 scope 发起的网页授权,但是就是想吐个槽,不然无法好好过完一天。
ihainan
2017-12-14 13:41:09 +08:00
之前看 Slack Bot 的文档,感觉写得真是好呀……
qiayue
2017-12-14 13:41:45 +08:00
是的 snsapi_base 不需要用户同意
oldcai
2017-12-14 13:44:28 +08:00
@ihainan
@liuzhedash
之前看 slack,Twitter,Google,Facebook 文档。。。第二语言都挑不出毛病啊
ajiangnet
2017-12-14 13:45:43 +08:00
当初就是看过文档之后放弃玩公众号的想法的,看了第一感觉就是复杂。
oldcai
2017-12-14 13:50:59 +08:00
@liuzhedash
@qiayue
你们应该都是极好的人,从来不挑别人毛病。
吐槽其实也是想推动一下国内,至少是微信的接口设计、文档描述,希望能梳理清楚一点,至少不要那么让人沮丧。
当然,他们不愁没人来集成他们的 API,所以也没动力优化吧。
lion9527
2017-12-14 13:52:23 +08:00
要是看过新浪微博的文档,你会发现腾讯的文档舒服太多……

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/414671

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX