支付宝开发问题记录
项目中要有支付功能,所以就用到了支付宝支付,然后查看它的文档,已经迷在里面了
我要用到即使到账,手机网站支付,快捷登录
文档地址:
我用的是历史接口 有相应的demo
需要注意的是,历史接口需要用到是的合作伙伴密钥,如下图所示:
现在支付宝开发者平台用的新的接口,需要使用开发平台密钥:
具体的关于新的接口使用已经开发平台介绍可以看下:
因为我用的历史接口,所以这里具体的流程也不清楚。
开发的时候用到哪个服务就需要进行签约。
好像是有两种方式签约,一种是自助式签约,一种是人工签约。
下面这个地址是服务列表
https://b.alipay.com/order/productSet.htm
从这个列表进去,进行签约,具体的签约流程比较简单,可以参考如下的地址
https://cshall.alipay.com/support/help_detail.htm?help_id=396831
这个应该是自助式签约,比较方便。
另外一个地址
https://b.alipay.com/signing/productSet.htm
这个也是服务的列表,从这个列表进去进行签约就比较蛋疼了
操作步骤如下:
1.
2.点击’立即签约’到下一步:
3.如果已经实名认证了,点击填写到下一步:
4.这个页面就比较头痛了,需要上传一个网络文化经营许可证,这个证貌似特别难办,我们公司至今没有办下来,所以下面的步骤我也没有办法演示了。
所以从上面来看,自助式签约很方便,不用上传这个网络文化经营许可证,不知道是不是支付宝忘记了,还是怎么回事。不保证后面支付宝升级,自助式签约也需要上传这个证了。
上面差不多就是使用支付宝支付需要做的准备工作了,下面开发就比较好弄了,支付宝提供了一些服务的demo,只不过只有java,php,.net版本的,因为我用的是nodejs,没办法直接使用,网上搜索了下nodejs版本
https://github.com/lodengo/alipay
这个项目已经最后一次更新已经是两年前了,然后运行的时候有问题,后来就在他的基础参考支付宝提供的最新版的php版本提炼出来的,修改了一些bug
自己做了一个demo
地址:
https://github.com/jiangli373/AlipaySdk
项目的名字应该叫做AlipayDemo,当时想做成sdk,谁知最后做成了一个demo
目前集成了
1.即时到帐的接口
2.支付宝快捷登录
3.支付宝手机支付
接入即时到帐需要先在支付宝进行签约,签约成功以后才能使用这个接口
运行步骤:
1.git clone https://github.com/jiangli373/AlipaySdk
2.npm install
3.cp alipay_config.default.js alipay_config.js
4.修改alipay_config.js 添加相关信息:
var config = {
partner:'' //合作身份者id,以2088开头的16位纯数字
,key:''//安全检验码,以数字和字母组成的32位字符
,seller_email:'' //卖家支付宝帐户 必填
,host:'http://localhost:3000/'
,cacert:'cacert.pem'//ca证书路径地址,用于curl中ssl校验
,transport:'http' //访问模式,根据自己的服务器是否支持ssl访问,若支持请选择https;若不支持请选择http
,input_charset:'utf-8'//字符编码格式 目前支持 gbk 或 utf-8
,is_anti_phishing_key:false //是否防止钓鱼 登录使用 如果已申请开通防钓鱼时间戳验证,这里需要设置为true
};
项目说明:
app.js 中 require(‘./useAlipay’).route(app); # 设置了支付宝通知路由
useAlipay.js包装了下Alipay对象,可以在工程中调用