案例:我想在Hapi(Node.js)服务器上为我的网站用户保留* .js文件,因此他们可以包含类似CDN的文件(即:jQuery,font-真棒)。
问题:在Hapi(Node.js)服务器上执行此操作的正确方法是什么?
我已经尝试过的只是链接它们:
<script src="https://mywebsite.com/myscripts/myjsfile.js"></script>
或根据Inert plugin和Future Studio Tutorial使用Hapi Documentation声明路线:
server.route({
method: "GET",
path: '/myscripts/{path}',
handler: {
directory: {
path: '/myscripts/',
}
}
}
然后在html脚本标签中链接它们(如上所述)。我得到的是:
{"statusCode":403,"error":"Forbidden"}
我在Heroku上测试它,我使用的所有插件都是:
答案 0 :(得分:1)
解决方案非常简单:
auth
设为false
,handler()
&#39; directory()
listing
设为true
路由,允许每个网站访问静态文件 www.example.com/myscripts/whatever.js
server.route({
method: "GET",
path: '/myscripts/{path}',
config: {
auth: false,
cors: { origin: ['*'] },
handler: {
directory: {
path: 'myscripts',
listing: true
}
}
}
}