我在寫一個使用asp.net的web應用程序。我通過一些非公開但可用於服務器端的網絡連接到JSP頁面。我的目標是從我的asp.net頁面(這將是大衆)發佈的數據到JSP頁面(這是私人用戶),然後檢索jsp.page將數據從ASP.net頁面發佈到JSP頁面
protected void Page_Load(object sender, EventArgs e)
{
Page page = HttpContext.Current.Handler as Page;
String Url = "https://192.168.0.1:1111/aaa/sss/test.jsp";
StringBuilder postData = new StringBuilder();
postData.Append("a=" + p.Request.Form[0] + "&");
postData.Append("b=" + p.Request.Form[1] + "&");
postData.Append("c=" + p.Request.Form[2] + "&");
postData.Append("d=" + p.Request.Form[3] + "&");
postData.Append("e=" + p.Request.Form[4] + "&");
postData.Append("f=" + p.Request.Form[5] + "&");
postData.Append("g=" + p.Request.Form[6] + "&");
postData.Append("h=" + p.Request.Form[7]);
StreamWriter writer = null;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
request.Method = "POST";
request.ContentType = "text/html";
request.ContentLength = postData.ToString().Length;
try
{
writer = new StreamWriter(request.GetRequestStream());
writer.Write(postData.ToString());
System.Web.HttpContext.Current.Response.Write(writer.ToString());
}
finally
{
if (writer != null)
writer.Close();
}
}
你有什麼試過?將其分解爲兩個問題:1)您的ASP.NET應用程序接受來自用戶的輸入。 2)您的服務器端代碼向外部資源發送請求。兩者都是分開的。你可以在.NET中使用類似'HttpClient'的東西來發送請求到外部資源並讀取響應。 – David
#Luiggi門多薩 這是我得到使用你的建議 型「System.Net.WebException」發生在System.dll中的一個例外,但在用戶代碼 其他信息沒有處理Web客戶端:遠程服務器返回錯誤:(404)未找到。 – user3410843
@LuiggiMendoza其實我得到它的工作錯誤是從這行代碼。字符串HtmlResult = wc.UploadString(Url,postData.ToString());頁面已完成其工作,但我沒有收到響應,我的應用程序得到了上述錯誤。當我註釋掉wc.Headers [HttpRequestHeader.ContentType] =「application/x-www-form-urlencoded」; ---這行,,,我沒有得到任何錯誤,但頁面沒有完成它的工作 - – user3410843