我正在制作一个程序来监视我的网络,并且在此程序中,我正在读取正在经过我的网络的HTTP流量。我想要做的一件事是将AJAX HTTP流量与“正常”HTTP流量分开。是否有可能做这样的事情? HTTP标头中是否有可以告诉你请求是否是AJAX请求的东西?是否可以通过查看HTTP流量来查看是否使用了AJAX?
回答
有大多数框架在制作AJAX请求时设置的X-Requested-With
标头。它看起来像这样:
X-Requested-With: XMLHttpRequest
有没有保证(显然头是在客户端的完全控制下),但通常它在那里。
我不知道'X-Requested-With'标头,但是当我检查一个简单的使用Firefox制作的AJAX请求时,我找不到这个标头,所以我不确定这个标头有多信任。 – Cokegod 2013-05-10 23:02:55
@科克戈德:好吧,没有头可以被“信任”,因为它们都是客户的乐趣。 *在实践中*,我知道的所有框架都会在发出AJAX请求时自动设置此标头。但让我们以你的反例为例:你提出了请求,你检查了它。有没有什么明确标记为AJAX?大概不会。所以这就是您可信赖的答案。 – Jon 2013-05-10 23:07:48
我知道我永远不可能100%信任头,但是你确实有'User-Agent'头,它几乎总是被使用。我希望有类似的东西来显示请求是否通过AJAX发送。我想如果我找不到更好的东西,我会使用'X-Requested-With'标头。 – Cokegod 2013-05-10 23:11:30
- 1. 检查,看看是否通过FTP
- 2. 是否可以查询ErrorProvider以查看是否设置了错误?
- 3. 是否可以使用php来查看活动会话?
- 4. 是否可以查看HttpClient的org.apache.http.conn.EofSensorInputStream?
- 5. 是否可以查看文档?
- 6. 是否可以通过视图“查看”不透明的父项?
- 7. 使用DD查看all_constraints以检查FK约束是否可行
- 8. 是否可以通过查看证书来确定是否正在使用HTTPS代理?
- 9. 检查用户是否看过东西
- 10. 是否可以按国家查看应用下载量?
- 11. 是否可以使用Fiddler来调试Http流量问题?
- 12. 如何查看我的视图是否可以看到?
- 13. HealthKit:是否可以通过查询来总结两个数量?
- 14. 查看结果是否为
- 15. Ping sagepay查看是否down
- 16. 查看密码是否等于变量
- 17. 在django中,是否可以使用F()对象来查看常量是否包含字段中的字符串?
- 18. 是否可以在Packetbeat中查看来自请求的HTTP POST数据?
- 19. Keras - 是否可以查看模型的重量和偏差
- 20. 是否可以在Google Analytics中单独查看网址变量?
- 21. 是否可以通过查看URL来确定资源是否在BlobStore上托管?
- 22. 是否可以使用DTrace查看传递给strncpy的参数?
- 23. 是否可以使用MFMessageComposeViewController查看发送SMS的内容?
- 24. 是否可以使用Synopse SynPDF库查看PDF文件?
- 25. 是否可以使用git查看网站克隆的分支?
- 26. 是否可以使用gomobile呈现/查看html?
- 27. 是否可以通过脚本检查Vagrant框是否过期?
- 28. 是否可以通过EMR(通过VPC)看到Spark UI?
- 29. 查看是否有任何QTips可见?
- 30. DataGridView:查看ColumnHeaders是否真的可见
一个骇客解决的办法是检查JSON和可能的XML响应。 – millimoose 2013-05-10 22:49:24