我正在处理的应用程序依赖于许多弹出窗口。这些弹出窗口依赖于查询字符串。如果有人可以在浏览器地址栏中键入url,则该页面将引发错误,因为查询字符串值是动态构造的。
function myFunction(id)
{
window.open("mypopup.aspx?id=" + id);
}
如果页面的请求者不是Javascript,为什么要阻止页面显示?如果有人输入以下内容:
https://mycompanyname.com/path/mypopup.aspx
它不应该让用户这样做。或者,至少检查请求者是否不是javascript,以便我可以显示消息或将用户重定向到其他页面?否则,在没有构造请求所需的所有数据的情况下,页面将引发异常。
感谢您的帮助。
如果缺少某些内容,则直接在myPopup.aspx中直接验证查询字符串,只需重定向或显示一条消息即可。
使用Request.QueryString集合在myPopup.aspx中进行验证。
据我所知,没有简单的方法可以验证请求是否来自javascript。您可以尝试创建令牌以验证发送方是否是您期望的发送方,但是如果您只需要验证参数,则无需担心谁发送了请求。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句