可以说这是一个深坑。
起因是我们用了ISV的模式请求auth_token。
提示:
{"error_response":{"code":"40002","msg":"Invalid Arguments","sub_code":"isv.invalid-app-id","sub_msg":"无效的AppID参数"}
我在申明alipayClient的时候用的ISV的APPID 和公钥私钥。
报了这个错后一头的雾水,APPID怎么可能错呢。
还好我开发过当面付的支付宝支付。
所以记住,如果你是ISV模式,官方给你的文档很可能不对。
记住了:
AlipaySystemOauthTokenResponse response = alipayClient.execute(request);
这行代码是普通商户模式的,不适合ISV模式。
要改成
AlipaySystemOauthTokenResponse response = alipayClient.execute(request,null,"子商户的app_auth_token");
子商户的app_auth_token需要子商户授权后可以在服务商那看到。
授权的方法:
http://www.sanshu.cn/a/14443.html