可能说一般都会追加 X-Request-With。但是这并不是标准 Header。所以比如 Angular 的 $http Service 中发送请求就不会携带这个 Header,除非你手动配置追加了它。
那么,当没有这个 Header,后台如何判断?
我个人觉得,貌似后端就无从所知了。
可能说一般都会追加 X-Request-With。但是这并不是标准 Header。所以比如 Angular 的 $http Service 中发送请求就不会携带这个 Header,除非你手动配置追加了它。
那么,当没有这个 Header,后台如何判断?
我个人觉得,貌似后端就无从所知了。
就是无所适从,不论是正常请求还是ajax,发送的HTTP请求都是一致的,想要判断是否是ajax请求,就必须增加标识位,X-Request-With是一种,当然你也可以自定义其他的,比如在参数里增加特定值,使用HTTP Only的Cookie来判断等等。