Paypal IPN发送回验证但前后有数字

时间:2013-08-13 20:31:11

标签: paypal paypal-sandbox paypal-ipn

Paypal documentation says

  

PayPal会发回一个单词,如果是,则验证为VERIFIED   如果存在任何差异,则使用PayPal或INVALID发起的消息   最初发送的内容

但是,我从Paypal收到以下IPN通知(注意:我正在使用Sandbox进行测试):

HTTP/1.1 200 OK
.... [removed headers for brevity]
Content-Type: text/html; charset=UTF-8

8
VERIFIED
0

VERIFIED之前和之后的数字8和0是多少?我的猜测8是VERIFIED字的长度,但这只是一个猜测。

更新正如PayPal_Robert正确指出的那样,这是因为HTTP分块传输编码。来自wikipedia page

  

每个块的大小都是在块本身之前发送的   接收器可以告诉它何时完成接收数据   块。数据传输由最后一块长度终止   零。

1 个答案:

答案 0 :(得分:1)

这是因为chunked HTTP data和常规fsockopen()集成,包括响应中的这一点。

您可以应用trim()来修剪它并专门查看INVALID / VERIFIED,或者从fsockopen()切换到cURL(假设您正在使用PHP)。

就我个人而言,我建议您使用正确的HTTP库,如cURL而不是fsockopen(),因为它允许现在和将来更大的灵活性。