我无法将js前端连接到Node/Express后端。当我从我的客户端js向我的服务器发出请求时,我的请求返回成功,但是我请求的页面没有呈现。
服务器端我有:
app.get('/dashboard', (req, res) => res.render('dashboard/dashboard', { updates, agendaItems }));
客户端:
$.ajax({
type: 'GET',
url: '/dashboard',
data: context,
success: function () {
console.log('success');
},
error: function (jqXHR, textStatus, err) {
console.log(textStatus);
}
});
我没有收到任何错误,并且在我的控制台上显示了console.log('success')。当我转到http://localhost:27017/dashboard或在Postman中发出get请求时,我的路由确实按预期工作。我唯一的问题是从我的客户端js发出路由请求。我在点击按钮时发出ajax请求。
发布于 2017-12-28 22:37:12
术语'ajax‘指的是’异步javascript和xml‘(有点傻的名字,imho)。这是一个http请求,可以从网页中运行的代码发出。页面的代码负责处理响应-默认情况下,浏览器不会对其执行任何操作。
这与重定向浏览器形成对比,重定向浏览器指示浏览器发出请求并通过解析和呈现响应来处理响应等。
如果需要,ajax()调用中的success函数可以用来解析和显示响应,但这需要更多的工作,而且通常更容易组织应用程序,使其尽可能多地使用浏览器的默认行为。
引导浏览器重定向用户将实现这一点:
window.location = "/dashboard";
https://stackoverflow.com/questions/48009229
复制相似问题