我正在开展一个涉及找出用户提出的http请求的项目。
我有所有的http请求和响应标头(但不是数据),我需要找出用户请求的内容以及自动发送的内容(例如广告页面,后台流媒体和所有内容)各种不相关的内容)。 在记录净流量时(即使是很短的时间),会产生很多内容,而且大部分内容都不相关。 因为我不是http的专家,我喜欢一些方向的帮助,我可以安全地使用哪些标题(假设大多数网页发送它们),哪些标题可能会被省略,所以依赖它是不安全的
我目前的想法包括: 找到所有的html文件,检查主要的html文件是什么(没有引用者或搜索引擎引用者),然后递归地将这些html文件调用的所有文件标记为相关,并丢弃其余文件。
这个问题是我被告知我不能信任引用者标题,我不知道如何识别用户点击的html文件。 各种帮助将不胜感激,如果帖子格式不正确,对不起,这是我的第一个问题。
编辑: 我已经被告知这个问题已经足够清楚,所以我所要求的只是某种方式来确定哪些请求是由用户触发的,并且是自动发出的请求
答案 0 :(得分:0)
要确定用户自己发送了哪个请求,您应该查看通过该连接发送的第一个请求并查看它的响应正文。
在第一个正文中引用然后连续发送给用户的所有外部文件最有可能在没有用户交互的情况下自动发送。
请求之间的时间间隔也可能是值得关注的因素。
你已经提到的另一件事就是看Referer标题。就RFC 2616 14.36而言,它可以被信任,因为如果请求URI来自用户输入,则不能发送Referer头。虽然可以自动发送没有Referer标题集的内容,因为它是可选的。