架构师_程序员

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 148|回复: 0

[资料] .Net集成paypal IPN 返回值一直是 INVALID

[复制链接]
跳转到指定楼层
楼主
发表于 2019-5-28 16:16:05
zu
首先,即时付款通知 (IPN)文档链接:https://www.paypal.com/us/cgi-bin/webscr?cmd=p/acc/ipn-info-outside

服务器收到即时付款通知后,您将需要通过构建一个发送到PayPal的HTTP POST对其进行确认。您的POST应发送到 https://www.paypal.com/cgi-bin/webscr

(当您收到时)。您还需要将一个值为“_notify-validate”的名为“cmd”变量(例如,cmd=_notify-validate)附加到POST字符串。

PayPal将回复该POST,并在回复的正文中包含一个单词“VERIFIED”或“INVALID”。


VERIFIED:代表验证成功,INVALID代表验证失败。

解决方案:

修改paypal的字符编码,找到“设置-销售工具-PayPal按钮语言编码-更多编码选项”,如下图:



设置“是否想在PayPal向您发送的数据中使用相同的编码(例如,IPN、可下载日志、电子邮件)?”编码为UTF-8。

我的代码:

  1. LogHelper.WriteLog("postdata:" + postData);
  2.             var client = new PayPalCoreSDK.HttpHelper("https://www.sandbox.paypal.com");
  3.             string temp = postData + "&cmd=_notify-validate";
  4.             var result = client.GetHtml(new PayPalCoreSDK.ValidateSourceRequest(temp));
  5.             LogHelper.WriteLog("postresult:" + result.HttpStatusCode + ":" + result.Html);
  6.             return Content("ok");
复制代码


尝试用postman提交,也返回“VERIFIED”,如下图:






上一篇:wpf 登录discuz 并发帖
下一篇:.NET弹性和瞬态故障处理Polly重试策略
帖子永久地址: 

架构师_程序员 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与架构师_程序员享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和架构师_程序员的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、架构师_程序员管理员和版主有权不事先通知发贴者而删除本文

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。

Mail To:help@itsvse.com

QQ|Archiver|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2019-7-18 08:28

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表