我有一个提供api路由的hapijs服务器和一个React应用程序。我使用inert和带有目录参数的处理程序为react应用程序提供服务。但是,由于我在路径{param *}中使用的参数将自动为'index.html'提供服务,因此hapijs仅在没有参数的情况下为react页面提供服务。这是有道理的,因为hapi会在目录中查找参数并以错误404进行响应。
现在,我想发生的事情是hapi不管参数(甚至是路由)如何为react页面提供服务,并让react处理404错误。我似乎找不到合法的解决方案。使用目录处理程序将不允许使用404,而使用函数处理程序为页面提供服务将为没有CSS或js脚本的页面提供服务。
我使用了以下教程并阅读了其他教程,但无济于事。 https://medium.com/@notrab/using-create-react-app-with-hapi-js-8f4ef3dcd311
.parseDefaulting(ChronoField.DAY_OF_MONTH, 1)
答案 0 :(得分:0)
使用Inert时,由于已将relativeTo
设置为已经解析client/build
目录,因此无需再次放入完整路径。
您也可以完全删除index: ['index.html']
,因为它将默认为查找索引文件
module.exports.register = function(server, options, next) {
server.route({
method: 'GET',
path: '/{param*}',
handler: {
directory: { path: '.' }
}
})