我在使用快速结帐时遇到问题。我尝试了网络上提供的所有解决方案,但无法使其工作! 我正在使用 VB 2012 for Web 和 ASP.NET。我在网站中构建了一个购物车,并尝试集成 PayPal Express Checkout(目前使用 Sandbox 中的测试帐户)。 当我单击 PayPal 按钮时,它显示错误:
10001 内部错误:处理请求超时
调试应用程序我发现问题出在他尝试调用电话时:
Try
Using myWriter As New StreamWriter(objRequest.GetRequestStream())
myWriter.Write(strPost)
End Using
Catch e As Exception
End Try
其中 strPost 如下:
METHOD=SetExpressCheckout&RETURNURL=http%3a%2f%2flocalhost%3a63223%2fCheckout%2fCheckoutReview.aspx&CANCELURL=http%3a%2f%2flocalhost%3a63223%2fCheckout%2fCheckoutCancel.aspx&BRANDNAME=PayPal+Sample+Application&PAYMENTREQUEST_0_AMT=36&PAYMENTREQUEST_0_ITEMAMT=36&PAYMENTREQUEST_0_PAYMENTACTION=Sale&PAYMENTREQUEST_0_CURRENCYCODE=USD&L_PAYMENTREQUEST_0+_NAME=Modena&L_PAYMENTREQUEST_0_AMT=36&L_PAYMENTREQUEST_0_QTY=1&USER=minni_1356740302_biz_api1.gmail.com&PWD=1356740320&SIGNATURE=AlYEmGf5ECuFHhwJgGlXJ.tMCTY0AFMcAx3nUjv6Ssg4RlD7YYwyoOJb&VERSION=88.0&BUTTONSOURCE=PP-ECWizard
可能出了什么问题?
我真的需要帮助......任何和所有的帮助都是值得赞赏的。 提前致谢!
最佳答案
此错误可能仅意味着 PayPal 沙箱服务器存在问题,也可能意味着您的请求存在问题。不过,我刚才使用 SetExpressCheckout 成功进入了沙箱,所以我猜它一定与您的请求有关。
我立即看到的一件事是,您将无法在 ReturnURL 和 CancelURL 中使用 localhost,因为在使用时它将从 PayPal 的服务器运行。因此,“localhost”将是他们的服务器,而不是您的服务器,并且重定向将不起作用。您需要使用自己的公共(public) IP 地址或设置某种域来指向您的测试服务器。这可能是他们的服务器不喜欢的。
我注意到的另一件事是,您仅使用值 36 作为金额。 PayPal 文档指定您需要在金额值上使用两位小数,因此您需要确保并传递 36.00。
我注意到的下一件事(可能是导致您的问题的原因)是您的参数名称之一无效:[L_PAYMENTREQUEST_0+_NAME]
你需要把那个 + 去掉。我打赌这会解决您的问题,但我仍然会解决其他问题。
关于vb.net - PayPal - 10001 内部错误 : timeout processing request Express Checkout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14089666/