由於JS無法獲取初始頁面請求,C#能否在不發出新請求的情況下獲取當前標題?如何在不用C#提出新請求的情況下讀取當前的頭文件?
主要目標是通過查看具有傳入的自定義值「uid」:「world」的HTTP標頭,以確定誰正在訪問該頁面。確定後,將顯示該值在同一頁面上。
Hello "world"
這可以在C#中完成嗎?怎麼樣?
由於JS無法獲取初始頁面請求,C#能否在不發出新請求的情況下獲取當前標題?如何在不用C#提出新請求的情況下讀取當前的頭文件?
主要目標是通過查看具有傳入的自定義值「uid」:「world」的HTTP標頭,以確定誰正在訪問該頁面。確定後,將顯示該值在同一頁面上。
Hello "world"
這可以在C#中完成嗎?怎麼樣?
要訪問您的MVC控制器中的標題,您可以使用此:
控制器
public ActionResult Index()
{
var uid = System.Web.HttpContext.Current.Request.Headers["uid"];
// Add your view model logic here...
var model = new TestModel
{
HeaderValue = uid
};
return View(model);
}
查看
@model MyProject.Models.TestModel
<div>
Hello @Model.HeaderValue
</div>
var uid = HttpContext.Current.Request.Headers [「uid」]; //「當前」是一個未解決的符號。有我缺少的圖書館嗎?我有「使用System.Web.Mvc;」 – RedApple 2014-09-22 17:09:25
啊,你是對的。我會更新我的答案。 – 2014-09-22 17:21:50
在ASP.NET中,你可以閱讀來自Request對象的Headers。我的答案是假設Web窗體,如果您未使用Web窗體,請更新您的問題(將來在您的初始問題中包含此信息很重要)。
<asp:Label runat="server" id="HeaderLbl" />
而後面的代碼:
using System.Web; //add this to the top of your class if it's not already there
protected void Page_Load(object sender, EventArgs e)
{
HeaderLbl.Text = Request.Headers["uid"];
}
在你的控制器,使用System.Mvc.Web.Mvc.Request.Headers
從當前請求獲得頭。
如果您使用的是剃刀,您可以直接在您的.cshtml頁面中包含@Request.Headers
,並且如果您願意,可以使用Javascript共享內容。
這是ASP.NET嗎?你想在服務器端獲得一個特定的標題,然後顯示它們嗎? – mason 2014-09-22 15:31:38
是的,它是ASP .NET ...我有一個.cshtml文件。它更像是用戶將特定的頁眉傳遞給頁面,以便我可以顯示它。 – RedApple 2014-09-22 15:34:22