Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在REST请求后不使用重定向更新HTML内容?_Javascript_Html_Api_Rest_Request - Fatal编程技术网

Javascript 如何在REST请求后不使用重定向更新HTML内容?

Javascript 如何在REST请求后不使用重定向更新HTML内容?,javascript,html,api,rest,request,Javascript,Html,Api,Rest,Request,我被告知为API请求发出重定向('/')不是RESTful的。我一直这样做: app.delete('/items/:id', urlencodedParser, (req, res) => { let index = parseInt(req.params.id); items.splice(index, 1); res.redirect('/'); }); 我现在知道这是错误的。但是,在不手动刷新页面的情况下,我需要做什么来更新HTML网页上的内容呢?通常,

我被告知为API请求发出
重定向('/')
不是RESTful的。我一直这样做:

app.delete('/items/:id', urlencodedParser, (req, res) => {
    let index = parseInt(req.params.id);
    items.splice(index, 1);

    res.redirect('/');
});
我现在知道这是错误的。但是,在不手动刷新页面的情况下,我需要做什么来更新HTML网页上的内容呢?

通常,发行人(例如HTML客户端)会收到确认(例如202已接受)并决定如何呈现结果

可能是web客户端在此时决定刷新,或者获取新列表并使用动态HTML技术重新呈现——这取决于web站点的复杂性,两者都可以

不过你说得对,这不应该在服务器端完成——未来的应用可能没有HTML呈现——例如系统集成或本机移动应用


在这些情况下,我喜欢返回一个有效负载,它向客户机提示下一步要做什么。例如,我可能包括以下内容:

200 OK

{
  "message": "delete id xxx completed",
  "_next": "https://my-server.com/api/items"
}

它可以帮助开发人员在将来决定如何进行。

在没有底层框架的情况下,最简单的方法可能是jQuery的.load()特性