如何将响应与相关联的请求保持一致
How to timestamp a response consistently with an associated request?
我正在实现即时搜索。由于网络不会按照响应的顺序保留请求的顺序,我不希望(n个较早的)搜索"francis"覆盖(稍后的)搜索的"francis-haart"。
我想在请求中对一个自定义http头进行时间戳,然后提取它并将其编织回响应中。(我对请求使用ajax,对响应使用django。)
将响应(如搜索结果)与请求(如搜索查询)保持一致的时间戳的最佳做法是什么?
(对我来说)最简单的方法是向请求中添加一个随机生成的id,该id将作为JS变量存储在浏览器中,并与结果一起从服务器直接发送回来。如果响应id等于存储的id,则显示它。如果不是,则表示已经发出了另一个请求,您可以丢弃刚刚返回的请求。
当用户输入时,中间结果集将永远不会显示,因为在最后一个请求返回之前将输入下一个字母,但这实际上可能对您有利,因为不断闪烁的结果可能看起来很混乱。
相关文章:
- ajax请求的顺序总是不同的
- Meteor如何接收HTTP请求
- 有没有一种方法可以防止img get请求使用css或js发生
- 从ajax请求中获取javascript对象
- JSONP请求返回结果,但也触发error_callback
- 在localhost Dev Box上测试JSONP请求的最佳方式
- Ajax请求文档就绪会导致jquery加载缓慢
- MockJax没有在JavaScript应用程序中发送对我AJAX请求的响应
- 正在传递JSONP标头's数据参数到另一个文件中的AJAX请求
- 在openshift node js应用程序中获取请求
- 反应路由器弄乱了请求网址
- 在我的情况下,如何进行http请求
- 使用密码对话框Javascript请求帮助
- servlet中的请求对象,而不是从jsp接收参数值
- 否'访问控制允许来源'标头存在于IISNOde中请求的资源(AngularJS+NodeJs)上
- JavaScript代码未正确检查ajax请求
- node.js请求数据事件未在CORS ajax调用中触发
- 如何检测第三方广告服务器请求
- 在Rails中更新Div,而不更改更新请求后的视图
- 如何将响应与相关联的请求保持一致