Javascript 如何使用数据库回调函数重定向用户-HAPI
我希望在数据库响应之前向我的用户显示一个加载图标,然后重定向到正确的页面 我的代码大致如下:Javascript 如何使用数据库回调函数重定向用户-HAPI,javascript,node.js,http,hapijs,Javascript,Node.js,Http,Hapijs,我希望在数据库响应之前向我的用户显示一个加载图标,然后重定向到正确的页面 我的代码大致如下: // handler function handler(request, reply) { reply.view('loading') // show loading with css // do database stuff... // database callback function function db_callback_function() { reply.re
// handler
function handler(request, reply) {
reply.view('loading') // show loading with css
// do database stuff...
// database callback function
function db_callback_function() {
reply.redirect('user/page') // after db responds, redirect.
}
}
Hapi说我只能使用回复界面一次:
Unhandled promise rejection (rejection id: 1): Error: reply interface called twice
那么,在加载数据库后如何重定向用户
编辑:我知道我需要使用前端显示加载程序。我只是不知道后端如何告诉前端何时重定向。一个请求只能响应一次。 您应该在前端而不是后端进行“加载” 因此,当您发送HTTP请求时,应该将您的状态标记为正在加载 对于示例代码,服务器代码应修改为:
// handler
function handler(request, reply) {
// reply.view('loading') <- REMOVE THIS LINE
// do database stuff...
// database callback function
function db_callback_function() {
reply.redirect('user/page')
}
}
//处理程序
函数处理程序(请求、回复){
//reply.view('加载')前端如何知道何时重定向到适当的页面?请查看我的更新答案,简而言之——你不会有整个页面的加载状态,只需使用js和css即可。你说前端何时收到响应。它将如何做到这一点?我的前端将如何收到响应?1.发送请求2.使用JavaScript和css来处理w一些加载动画3.响应返回4.页面将根据您的代码重定向到相应的页面…而且,您不希望HTTP请求有响应吗?如果您的后端只是一个REST接口,那么您需要在前端添加一个带有JS的旋转加载程序。