Javascript 降低Django web应用程序中Vue.js更新方法中的请求速率
我在Django模板中有一个Vue.js视图。Vue从Django Rest Framework端点提取要在视图中显示的数据。我的代码如下:Javascript 降低Django web应用程序中Vue.js更新方法中的请求速率,javascript,python,django,vue.js,vuejs2,Javascript,Python,Django,Vue.js,Vuejs2,我在Django模板中有一个Vue.js视图。Vue从Django Rest Framework端点提取要在视图中显示的数据。我的代码如下: const app = new Vue({ el: '#app', delimiters: ["[%", "%]"], data: { dedicated_server: [], }, created() { fetch(
const app = new Vue({
el: '#app',
delimiters: ["[%", "%]"],
data: {
dedicated_server: [],
},
created() {
fetch('/api/dedicated-server/{{ object.id }}/')
.then(response => response.json())
.then(json => {
this.dedicated_server = json;
})
},
updated() {
/* TODO: Try and limit the number of requests to the API */
fetch('/api/dedicated-server/{{ object.id }}/')
.then(response => response.json())
.then(json => {
this.dedicated_server = json
})
},
});
如您所见,我有一个更新的方法,该方法在数据更改时轮询Restful端点以更新页面。这一切都很好,但它似乎每秒轮询Restful API端点3到5次。这在开发中是很好的,但是如果我有100人访问这个页面,那么它将用请求杀死我的服务器
有没有办法限制Vue.js检查数据是否已更新的次数?如果你能说每5秒检查一次,那就太好了。你可以用它每5秒运行一次。在created
中设置它,您无需担心updated
setInterval(() =>
fetch('/api/dedicated-server/{{ object.id }}/')
.then(response => response.json())
.then(json => {
this.dedicated_server = json;
}),
5000);