说明:
1.需http://或者https://格式的完整路径
例:https://您的域名/notify_url.php ,支持ip地址方式。(推荐使用域名)
2.不能加?id=123这类自定义参数
错误示例:https://您的域名/notify_url.php?id=123&test=abc
3.必须外网可以正常访问,这个不难理解,在您的异步地址没有代码逻辑的情况下,直接访问应该是一个空白页面并且
http状态是200( 不支持http200以外的状态 )
4.不能有重定向 如:http302
5.使用POST方式接收,请确保 服务器路由已经开放POST通知
错误原因:
1.异步地址无法公网访问
2.异步地址代码传值错误
3.其实已经收到(其实是验签失败返回为空),但是没有做日志记录或者没有记录到通知。
建议:大家优先使用云排查自查 https://openclub.alipay.com/read.php?tid=1132&fid=25
自查流程:
1.直接访问自己配置的notify_url中的值
检查notify_url访问状态(不支持除200以外的状态) 选择和服务器不同域的一台电脑,在chrome浏览器右键「检 查」- >地址栏输入notify_url地址->查看Network中的Status是否是200
<ul class="cc big_img J_gallery_list" "="" style="margin-bottom: 0px; zoom: 1;">
如果是http 0 请参考: https://openclub.alipay.com/read.php?tid=516&fid=25
参考帖子: https://openclub.alipay.com/read.php?tid=675&fid=2
2.检查自己notify_url传值.以app支付为例,
java传值:
复制代码
php传值:
复制代码
错误传值方式
(部分同学错误认为是填写在应用下面授权回调地址中)
<ul class="cc big_img J_gallery_list" "="" style="margin-bottom: 0px; zoom: 1;">
3.其实已经收到误以为没有收到通知请参考验签失败帖子检查
1.需http://或者https://格式的完整路径
例:https://您的域名/notify_url.php ,支持ip地址方式。(推荐使用域名)
2.不能加?id=123这类自定义参数
错误示例:https://您的域名/notify_url.php?id=123&test=abc
3.必须外网可以正常访问,这个不难理解,在您的异步地址没有代码逻辑的情况下,直接访问应该是一个空白页面并且
http状态是200( 不支持http200以外的状态 )
4.不能有重定向 如:http302
5.使用POST方式接收,请确保 服务器路由已经开放POST通知
错误原因:
1.异步地址无法公网访问
2.异步地址代码传值错误
3.其实已经收到(其实是验签失败返回为空),但是没有做日志记录或者没有记录到通知。
建议:大家优先使用云排查自查 https://openclub.alipay.com/read.php?tid=1132&fid=25
自查流程:
1.直接访问自己配置的notify_url中的值
检查notify_url访问状态(不支持除200以外的状态) 选择和服务器不同域的一台电脑,在chrome浏览器右键「检 查」- >地址栏输入notify_url地址->查看Network中的Status是否是200
<ul class="cc big_img J_gallery_list" "="" style="margin-bottom: 0px; zoom: 1;">
如果是http 0 请参考: https://openclub.alipay.com/read.php?tid=516&fid=25
参考帖子: https://openclub.alipay.com/read.php?tid=675&fid=2
2.检查自己notify_url传值.以app支付为例,
java传值:
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
public
AlipayTradeAppPayResponse pay1()
throws
AlipayApiException{
//正式环境使用
//AlipayClient client = new DefaultAlipayClient(Config.serverUrl, Config.appId, Config.privateKey, Config.format, Config.charset, Config.alipayPulicKey, Config.signType);
//沙箱环境使用
AlipayClient client =
new
DefaultAlipayClient(Config.serverUrlDev, Config.appIdDev, Config.privateKeyDev, Config.format, Config.charset, Config.alipayPulicKeyDev, Config.signType);
AlipayTradeAppPayRequest request =
new
AlipayTradeAppPayRequest();
//异步地址传值方式
request.setBizContent(
"{"
+
"\"out_trade_no\":\"4467496464\","
+
"\"subject\":\"APP服务的请求测试\","
+
"\"total_amount\":\"0.01\","
+
"\"product_code\":\"QUICK_MSECURITY_PAY\"}"
);
AlipayTradeAppPayResponse response = client.sdkExecute(request);
System.out.println(response.getBody());
return
response;
}
|
php传值:
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
<?php
/**
* APP支付 RSA2签名方法
*/
require_once
'AopSdk.php'
;
$aop
=
new
AopClient ();
$aop
->appId =
'2017071907813415'
;
$aop
->rsaPrivateKey =
''
;
$aop
->alipayrsaPublicKey=
''
;
$aop
->apiVersion =
'1.0'
;
$aop
->postCharset=
'utf-8'
;
$aop
->format=
'json'
;
$aop
->signType =
'RSA2'
;
$date
=
date
(
"YmdHis"
);
$arr
=range(1000,9999);
shuffle(
$arr
);
$request
=
new
AlipayTradeAppPayRequest();
//异步地址传值方式
$request
->setNotifyUrl(
"填写异步地址的值"
);
$request
->setBizContent(
"{\"out_trade_no\":\""
.
$date
.
$arr
[0].
"\",\"total_amount\":0.01,\"product_code\":\"QUICK_MSECURITY_PAY\",\"subject\":\"app测试\"}"
);
$result
=
$aop
->sdkExecute(
$request
);
print_r(htmlspecialchars(
$result
));
?>
|
<ul class="cc big_img J_gallery_list" "="" style="margin-bottom: 0px; zoom: 1;">
3.其实已经收到误以为没有收到通知请参考验签失败帖子检查