我有一個aspx頁面,只需打印即可屏蔽接收到的任何POST信息。鍵/值對傳遞給Label控件的Text屬性,並顯示爲以逗號分隔的字符串。接收POST數據時遇到問題
這是整個頁面。
<%@ Page Language="C#" %>
<%@ Import Namespace ="System.IO" %>
<%@ Import Namespace ="System.Web" %>
<%@ Import Namespace ="System.Net" %>
<%@ Import Namespace ="System.Text" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
string initialUrl = HttpContext.Current.Request.Url.AbsoluteUri;
string[] keys = Request.Form.AllKeys;
string keyString = "POST KEY-VALUE PAIRS RECEIVED: ";
for (int i = 0; i < keys.Length; i++)
{
keyString += keys[i] + "=" + HttpContext.Current.Request.Form[keys[i]] + ", ";
}
Label1.Text = keyString;
}
</script>
<!DOCTYPE html>
<html>
<head runat="server">
<meta name="viewport" content="width=device-width" />
<title></title>
</head>
<body>
<div>
<asp:label ID="Label1" runat="server" text="Label"></asp:label>
</div>
</body>
</html>
我正在使用Google Postman進行測試。當我使用Visual Studio 2013在調試模式下啓動解決方案時,然後使用Google Postman在本地主機發送一篇文章,它完美地工作。鍵/值對出現在頁面上。
但是,當我將頁面推送到我的共享主機(當前使用GoDaddy),然後使用Google Postman進行測試時,它不起作用。頁面加載但鍵/值對不出現。
http://www.parseci.com/ipn.aspx
看來,POST數據沒有被網頁收到時,它的活在我的GoDaddy的網站,我想不通爲什麼。
GoDaddy技術支持沒有幫助。
我錯過了什麼?
更新:我將ipn.aspx文件複製到私人擁有的服務器上,並使用Postman以及Chrome Advanced Rest Client進行測試。在POST到另一臺機器上的監聽器頁面時,兩者都像魅力一樣工作。
因此,我在一個私人擁有的公共Web服務器上取得了成功,但GoDaddy作爲主機沒有成功。
我不確定如何將圖像附加到評論中,但在Postman中有三個選項 - 1)表單數據,2)x-www-form-urlencoded和3)原始數據。我已經嘗試了所有三個無濟於事。 – 2015-04-02 19:02:11
最終目標是讓此頁面收到PayPal IPN。我開始編寫頁面來接收和處理來自Paypal IPN的初始POST,但是我一直在收到錯誤,所以我試圖首先確認該頁面甚至是接收POST。那麼Chrome Rest Client和Paypal發送的內容有什麼區別呢? – 2015-04-02 19:06:19
表單數據應該沒問題。用郵差屏幕快照更新。 – Barett 2015-04-02 20:10:37