我正在尝试在我的 node.js 应用程序中实现 Paypal IPN 验证。我正在使用 express 框架。
这是我的代码:
app.post('/paypal', function(req,res){
console.log("IN PAYPAL !! req.body : "+req.body);
var ipn = require('paypal-ipn');
ipn.verify(req.body, function callback(err, msg) {
if (err) {
console.log("Error:"+err);
} else {
//Do stuff with original params here
console.log("req.body.payment_status :"+req.body.payment_status+" msg: "+msg);
res.end();
if (req.body.payment_status == 'Completed') {
//Payment has been confirmed as completed
}
}
});
});
我为此使用paypal-ipn。
当我尝试从 Paypal Sandbox 发送 IPN 消息时,我收到了这条消息
IPN 传送失败。无法连接到指定的 URL。请验证 URL,然后重试。
但是当我在 curl 的帮助下尝试从终端发送示例消息时,我在我的服务器应用程序上收到了请求,它正在显示日志
在贝宝!req.body : [object Object] req.body.payment_status :Pending msg: VERIFIED POST /paypal 200 572ms