这是我的第一篇博客,注册博客园多年,但是今天刚开通博客功能,目的是想记录一下这两天研究AliPay,电脑网站支付,在网上找到的知识点很少,也可能大家都没遇到这个问题,所以我想写下来共以后用得着的同学参考。下面进入正题:
首先在沙箱中创建应用,支付宝会帮你生成一个APPID(待会会作为参数传递到沙箱)和其他一些商户信息和应用信息。支付宝网关也是自动生成的,也是固定的。
接下来是填写应用公钥,将鼠标悬浮在可以查看生成方法。生成的时候注意选择PKCS1格式,这个是非JAVA适用的,密码长度官方建议使用2048。把商户应用公钥复制到上面的图片中的设置应用公钥,注意,每次点击生成密钥生成的都不一样,传参数的时候要和你设置到沙箱中的公钥一致。如果忘记了可以查看保存在本地的文件,每次生成都保存在本地。
至于下边的RSA密钥,应用网关,等等都可以不设置。
设置好了沙箱中的参数,接下来就是写代码了。首先下载官方的SDK,打开项目,新添加一个网站项目,并引用SDK的项目。让我捣鼓了半天的东西就是在下边写参数的时候,其实就那么几个参数,就是搞不定。app_id, merchant_private_key(商户应用私钥),alipay_public_key(支付宝公钥,沙箱应用中查看),一定要对应起来。
IAopClient client = new DefaultAopClient("https://openapi.alipaydev.com/gateway.do", app_id, merchant_private_key, "json", "1.0", "RSA2", alipay_public_key, "utf-8", false); AlipayTradePagePayRequest request = new AlipayTradePagePayRequest(); request.BizContent = "{" + " "body":"Iphone6 16G"," + " "subject":"Iphone6 16G"," + " "out_trade_no":"20150320010101009"," + " "total_amount":88.88," + " "product_code":"FAST_INSTANT_TRADE_PAY"" + " }"; AlipayTradePagePayResponse response = client.pageExecute(request); return response.Body;
小功告成,运行一下。
支付的时候使用沙箱中给你生成的沙箱账户哦!
到这里就总结完了。然后我要吐槽一下支付宝,你的官方Demo有Java的也有PHP的,就是没.Net的是什么意思。