微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angularjs请求头中x-requested-with XHR

XSS跨站脚本攻击见:http://www.jb51.cc/article/p-nwnmucyf-bch.html
增加安全性,服务器为cookie设置HttpOnly属性

对于Tomcat 7.0.x以上的版本,可以在应用的web.xml文件增加如下配置:

<session-config>
    <cookie-config>
        <http-only>true</http-only>
        <secure>true</secure> <!-- 启用HTTPS后,建议配置这行,仅在安全通道时传输Cookie,提升安全性 -->
    </cookie-config>
<session-config>

Apache Tomcat官方 Cookie类 的文档,可以发现从7.0.x版本可以通过 Cookie 类对象的API来设置 httpOnly 属性

/** * Sets the flag that controls if this cookie will be hidden from scripts on the client side. */ 
setHttpOnly(boolean httpOnly)

打开Chrome调试器的DEBUG面板,在右边选择Application,这时在下边可以看到Chrome缓存的cookie数据。如果HTTP列有对勾,说明对应行的cookie设置了HttpOnly属性

angularjs发现加载的模板html全是XHR请求,是因为angularjs使用XHR加载tpl文件
在Java WEB项目,比如在Server端的JSP中判断如下:

if (request.getHeader("x-requested-with") != null
    && request.getHeader("x-requested-with").equalsIgnoreCase("XMLHttpRequest")) {
    out.print("该请求是 AJAX 异步HTTP请求。");
}else{ 
    out.print("该请求是传统的 同步HTTP请求。");
}

原文地址:https://www.jb51.cc/angularjs/147353.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐