如何在没有隐藏字段的情况下将JavaScript变量发送到(asp-net-code-behind)c#
How to send JavaScript variable to (asp net code behind) c# without hidden field
如何在不使用<input type="hidden" />
字段的情况下将JavaScript变量发送到(ASP.NET代码隐藏)C#?在浏览器检查器中,hidden
字段及其值可见且可编辑。
您可以使用AJAX方法
一个好的教程:http://www.brainbell.com/tutorials/ASP/A_Web_Service_In_ASP.NET.html
例如,代码隐藏:
[WebMethod]
public static bool UpdateLocation(string lat)
{
try
{
//Your code
}
catch (Exception ex)
{
throw;
}
}
示例Javascript代码:
$.ajax({
type: "POST",
url: "/MyPage.aspx/UpdateLocation",
data: "{lat:'1313.23232'}",
contentType: "application/json; charset=utf-8",
dataType: "json"
});
如果我在会话中从js保存我的变量,然后从会话在asp.net中打开这个变量,用户还能看到并更改变量吗?
两件事:
首先,正如@AnibalDíaz所说,如果你不想在页面上有<input type="hidden" />
标签,你可能应该通过AJAX而不是表单来执行这个操作。
然而,第二,如果您担心用户可以看到该字段的值,那么您将面临更大的问题。在当前的浏览器检查器中,通常有一个"网络"选项卡,您可以在其中查看页面中的所有HTTP请求。大多数在HTML中寻找数据的人也知道,他们可以通过网络选项卡轻松地看到HTTP请求中的数据,事实上,他们可能会先去那里,而不是检查表单。如果你担心他们更改数据,许多浏览器的网络工具也允许你修改请求并再次发送,因此,他们也将能够轻松地发送具有该字段的不同值的另一个请求。
有一些方法可以让这变得更加困难,但最终,网页上没有任何内容是私有的。当你向用户发送网页时,你也在向他们发送你所有的JavaScript代码。恶意用户总是可以修改该代码并更改其行为。这意味着您永远不应该依赖浏览器来获得安全性。如果您不希望用户能够查看或修改某些数据,请不要将该数据发送给用户。
您可能需要重新思考一下您的体系结构。我对C#或ASP.NET了解不多,但如果你能在服务器上维护每个用户的会话,并在服务器上存储与该用户相关的数据,那就好了。如果您的数据存储在服务器上,并且从未发送到浏览器,则用户无法访问您的数据。
- 如何将javascript变量作为参数提供给asp.net方法
- 如何在 l.Content 方法(Asp.net MVC 剃刀)中给出 Javascript 变量@Ur
- 使用 ASP.NET 将 URL 变量传递给 Javascript 函数
- 将Javascript变量插入到Html.Partial ViewDataDictionary ASP.NET MVC中
- 正在将代码库中的C#变量更新到asp.net
- 在ASP.NET代码块中使用javascript变量
- asp.net mvc中的javascript变量出现问题
- 如何将文本框中的值存储到 asp.net vb.net 应用程序中的 JavaScript 变量中
- 如何使用一些变量参数从javascript函数调用 asp.net C#函数并从C#函数获取字符串返回
- 是否可以在页面中设置本地存储或会话变量 asp.net 并在另一页面上的javascript中读取它
- ASP.Net Ajax - JavaScript:如何在HTML中使用返回的变量显示
- 在 jquery 中访问在页面中序列化的变量时出现 Json 解析错误 asp.net .cs
- 如何在 ASP.NET 中将数据动态追加到 JQuery 控件变量
- 我可以在 asp.net-mvc 3 中的 @Ajax.Actionlink 中传递 Javascript 变量吗?
- 如何在 asp.net mvc 中使用 razor 视图模型将 c# guid 值分配给 javascript 变量
- Asp.net JavaScript 中的 MVC set 会话变量
- 如何在 asp.net mvc 中访问会话变量
- 无法使用动态创建的变量ASP.net运行Autocomplete jQuery
- 如何在没有隐藏字段的情况下将JavaScript变量发送到(asp-net-code-behind)c#
- JavaScript: Alert.Show(message) From ASP.NET Code-behind