2013-11-28 3 views
0

У меня есть URL, как этотСкрыть значение параметра из URL

http://localhost/PW/LeaveWithoutPay/Edit?id=9

, и я хочу, чтобы скрыть id?=9 от моего URL. Может ли кто-нибудь продемонстрировать, как скрыть этот параметр id с примером? Я использую Visual Studio 2012.

+3

использовать http сообщение, чтобы позвонить URL – zt9788

+0

Можете ли вы объяснить _why_ вы хотите скрыть это? Клиенту нужно будет знать идентификатор так или иначе. Это просто «префикс» URL-адреса? – CodeCaster

ответ

0

Только одно, что вам нужно сделать, это использовать метод POST, а не GET. Поскольку веб-запрос обычно неактивен, поэтому я не думаю, что у нас есть другие методы, чтобы скрыть ваш идентификатор.

1

Необходимо использовать метод Post вместо метода GET. Вот пример для этого.

В контроллере определить что-то вроде этого

public ActionResult Edit([FromBody] int id) { 
     TempData["MsgText"] = id.ToString(); 
     return RedirectToAction("Index"); 
    } 

Сейчас в вашей точки зрения, реализовать метод POST. Образец пример:

@{string id =(string)TempData["MsgText"];}

@using (Html.BeginForm("Edit", "Home", FormMethod.Post, new { id = "frmCallThis" })){ 

@Html.Label("label",string.IsNullOrEmpty(id)?"No Id Provided":"Current ID = " + id) 

@Html.TextBox("id"); 

<input type="submit" value="Get This Printed" /> 

} 

Наконец вы следующий вывод: (Перед Submit) enter image description here

И после представить:

enter image description here

Надеется, что это помогает,

Смежные вопросы