在我的本地计算机上,一切都在开发中完全正常。当我将代码迁移到托管站点的生产服务器并保持沙箱模式时,我收到错误。
Exception in HttpConnection Execute: Invalid HTTP response Unable to connect to the remote server
我已经在代码中调试了这个位置的痕迹:
Dim setECResponse As SetExpressCheckoutResponseType = service.SetExpressCheckout(wrapper)
我们的Web.Config有以下条目:
<add key="PAYPAL_REDIRECT_URL" value="https://www.sandbox.paypal.com/webscr&cmd="/>
<add key="E_HOSTING_ENDPOINT" value="http://localhost"/>
<add key="PAYPAL_API_MODE" value="sandbox" />
<add key="PAYPAL_API_USERNAME" value="babrams-facilitator_api1.commuter.net" />
<add key="PAYPAL_API_PASSWORD" value="1395365656" />
<add key="PAYPAL_API_SIGNATURE" value="A78sCS0nUCkkjVsrxFQEygQ8fAp4ACIRrk.iJ6zw7-HJiwaeO0k28aIB" />
我们尝试将E_HOSTING_ENDPOINT更改为我们的网站域,但我们收到了同样的错误。我也尝试从生产服务器上的html页面测试这些URL,它们工作正常,所以我认为这不是防火墙问题或网络连接错误。
https://www.sandbox.paypal.com/webscr&cmd=_express-checkout&token=EC-4WB48589UH622552B https://api-3t.sandbox.paypal.com/2.0/
该项目在开发方面运作良好。它只是在生产中才起作用。
对于我们应该寻找什么或如何解决这个问题的任何见解将不胜感激。
答案 0 :(得分:0)
您是否检查过以确保生产服务器上已启用CURL?
答案 1 :(得分:0)
最后,答案是托管公司安装了一个微软补丁,删除了密码&#34;密码&#34;从他们的服务器,这导致PayPal DLL无法正常执行它的功能。他们取代了密码并重新启动。之后一切都有效。托管公司拒绝让我知道哪个MS补丁导致了这个问题,所以我无法报告。