2012-09-06 206 views
3

我想使用Paypal服務,我正在測試程序和使用沙盒,但令人困惑的問題是,當用戶從我的網站購買產品,然後重定向到我的'成功'頁面貝寶,我收到'Querystring'的數據,只有從那裏我可以讀取數據。 我相信這是錯誤的,因爲'Querystring'可以很容易地改變和修改。我想知道我如何確定我收到的'Querystring'屬於通過購買請求付款的用戶。Paypal支付安全

 string redirecturl = ""; 
     redirecturl += "https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_xclick&business=" + ConfigurationManager.AppSettings["paypalemail"].ToString();    
     redirecturl += "&first_name=erfanpj"; 
     redirecturl += "&city=stockholms"; 
     redirecturl += "&state=stockholms"; 
     redirecturl += "&item_name=" + l1.Text; 
     redirecturl += "&amount=" + l3.Text;   
     //redirecturl += "&[email protected]"; 
     redirecturl += "&shipping=5"; 
     redirecturl += "&handling=5"; 
     redirecturl += "&tax=5"; 
     redirecturl += "&quantity=1"; 
     redirecturl += "&currency=USD"; 
     redirecturl += "&return=" + ConfigurationManager.AppSettings["SuccessURL"].ToString(); 
       redirecturl += "&cancel_return=" + ConfigurationManager.AppSettings["FailedURL"].ToString(); 
     Response.Redirect(redirecturl); 
    } 

此外,我非常想知道'notify_url'和'paypal-ipn'參數究竟做了什麼。任何來自這裏尊敬的讀者的反饋將受到高度讚賞。

問候,

+2

您是否檢查過PayPal API文檔? https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/howto_api_reference – n8wrl

+0

Sommehow,但我不怎麼能檢查用戶! –

回答

4

從你的問題我不知道你有貝寶購買過程中有很好的理解。

首先,你應該使用貝寶生成按鈕(在您的PayPal賬戶作出的)是被加密並防止用戶在購買頁面上改變參數。

其次,在交易的貝寶IPN將發佈(通過SSL)到您的網絡服務器的網頁,您已經指定。在這裏你可以提取購買的細節。 (C# example on PayPal IPN handler)您應確保回覆爲VERIFIED,驗證接收方電子郵件地址是您的電子郵件地址,並且在履行訂單前IPN處理程序中的交易金額是正確的。 (更多代碼示例在PayPal Code Samples。)