2016-06-15 153 views
0

我有IPN沙箱和ASP.NET 4.0的問題。 我用於生產零件的相同代碼不適用於SandBox。PayPal IPN沙盒與asp.net錯誤

時引發的錯誤是如下:

異常消息:基礎連接已關閉:一個發送發生意外的錯誤。

這是代碼:

 string strSandbox = "https://www.sandbox.paypal.com/cgi-bin/webscr"; 
    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(strSandbox); 
    req.Method = "POST"; 
    req.ContentType = "application/x-www-form-urlencoded"; 
    byte[] param = Request.BinaryRead(HttpContext.Current.Request.ContentLength); 
    string strRequest = Encoding.ASCII.GetString(param); 
    string strResponse_copy = strRequest; //Save a copy of the initial info sent by PayPal 
    strRequest += "&cmd=_notify-validate"; 
    req.ContentLength = strRequest.Length; 
    StreamWriter streamOut = new StreamWriter(req.GetRequestStream(), System.Text.Encoding.ASCII); 

    streamOut.Write(strRequest); 
    streamOut.Close(); 
    StreamReader streamIn = new StreamReader(req.GetResponse().GetResponseStream()); 
    string strResponse = streamIn.ReadToEnd(); 
    streamIn.Close(); 

錯誤時,有人就行了

StreamWriter streamOut = new StreamWriter(req.GetRequestStream(), System.Text.Encoding.ASCII); 

是交易而不是調用支付頁面的正常工作的代碼。

我該如何解決?

回答

1

如果相同的代碼適用於生產站點,但不適用於沙盒,則很可能是沙盒環境出現間歇性網絡問題。

我最近在沙盒上看到過這個和相關的問題。繼續重試代碼,我相信某些請求會通過,而其他請求會被刪除。

+0

嗨,謝謝你的回答。他們大約5天,我看不到交易成功。我在網上閱讀了與沙盒類似的問題,但我從未找到解決方案。 – Mattekr