IPN传递失败:无法提取响应:未找到Content-Type

时间:2013-09-17 15:09:58

标签: vb.net paypal paypal-ipn

IPN传递失败:无法提取响应:未找到内容类型

PayPal.com提供的代码 “https://cms.paypal.com/uk/cgi-bin/marketingweb?cmd=_render-content&content_ID=developer/library_code_ipn_code_samples

Dim strSandbox As String =“https://www.sandbox.paypal.com/cgi-bin/webscr

Dim req As HttpWebRequest = CType(WebRequest.Create(strSandbox),HttpWebRequest)

    'Set values for the request back
    req.Method = "POST"
    req.ContentType = "application/x-www-form-urlencoded"
    Dim Param() As Byte = Request.BinaryRead(HttpContext.Current.Request.ContentLength)
    Dim strRequest As String = Encoding.ASCII.GetString(Param)
    strRequest = strRequest  + "&cmd=_notify-validate"
    req.ContentLength = strRequest.Length

当我运行IPN模拟器时:

我收到消息:IPN传递失败:无法提取响应:未找到Content-Type

我查看了Alex写道的StackOverflow:

完美 - 非常感谢。奇怪的是,相同的代码总是使用旧模拟器生成绿色标记和“IPN已成功发送”。无论如何,在我发回IPN之前,我推了下面的代码:Response.Clear(); Response.StatusCode = 200;回复于( “”);到Response.End();这似乎可以解决问题。毕竟,猜猜我没有正确阅读本手册。 - Alex Mar 15 at 9:04

对我不起作用。

9/18 有没有人有任何想法?

1 个答案:

答案 0 :(得分:0)

我刚刚遇到了这个问题。 Response.Write(“”)失败,但将其更改为“\ r \ n”有效。这是我在IPN处理程序中使用的完整代码:

        Response.Clear();
        Response.StatusCode = 200;
        Response.Write("\r\n");
        Response.End();