jjzjj

node.js - Hapi.js Catbox Redis 返回 "server.cache is not a function"

所以我99%确定我只是在这里搞砸了一些愚蠢的事情。我正在尝试设置catbox以将对象缓存到redis。我已经启动并运行了redis,我可以使用RDM(redis的类似sqlpro的实用程序)访问它,但Hapi不合作。我像这样注册rediscatbox缓存:constserver=newHapi.Server({cache:[{name:'redisCache',engine:require('catbox-redis'),host:'redis',partition:'cache',password:'devpassword'}]});我在server.js中执行此操作在这段代码之后,

javascript - 无法将上传的图像保存到 Hapi.js 中的数据库

我想使用hapi.js将上传的照片保存在mongodb中。但是我可以在上传文件夹中上传照片,但我无法将其保存在数据库中。这是代码:server.route({method:'POST',path:'/upload',config:{payload:{output:"stream",parse:true,allow:"multipart/form-data",maxBytes:2*1000*1000}},handler:async(req,h)=>{constresponse1=handleFileUpload(req.payload.image);console.log(respons

javascript - 无法将上传的图像保存到 Hapi.js 中的数据库

我想使用hapi.js将上传的照片保存在mongodb中。但是我可以在上传文件夹中上传照片,但我无法将其保存在数据库中。这是代码:server.route({method:'POST',path:'/upload',config:{payload:{output:"stream",parse:true,allow:"multipart/form-data",maxBytes:2*1000*1000}},handler:async(req,h)=>{constresponse1=handleFileUpload(req.payload.image);console.log(respons

javascript - 如何通过管道流以在 hapi.js 中回复

我正在寻找hapi中的并行方法//Express+Requestexmaplefunction(req,res){request('http://example.com/image.png').pipe(res);}如何在hapi中传递响应?server.route({method:"*",path:"/api/results/{date}",handler:(request,reply)=>{//????reply(?);}}); 最佳答案 来自另一个问题/答案:function(request,reply){Request('h

node.js - 如何使用 Hapi 将数据流式传输到浏览器?

我正在尝试使用流通过Hapi将数据发送到浏览器,但不知道我们如何。具体来说,我正在使用request模块。根据文档reply对象接受一个流,所以我尝试过:reply(request.get('https://google.com'));抛出一个错误。在文档中它说流对象必须与streams2兼容。,所以我尝试了:reply(streams2(request.get('https://google.com')));现在这不会引发服务器端错误,但在浏览器中请求永远不会加载(使用chrome)。然后我尝试了这个:varstream=request.get('https://google.com

javascript - hapi.js Cors Pre-flight 不返回 Access-Control-Allow-Origin header

我有一个使用(Dropzonejs)上传的ajax文件。它将文件发送到我的hapi服务器。我意识到浏览器发送了一个PREFLIGHTOPTIONSMETHOD。但我的hapi服务器似乎没有发送正确的响应header,所以我在chrome上遇到错误。这是我在chrome上遇到的错误XMLHttpRequestcannotloadhttp://localhost:3000/uploadbookimg.Responsetopreflightrequestdoesn'tpassaccesscontrolcheck:No'Access-Control-Allow-Origin'headerisp

node.js - TypeError : server. 连接不是 Hapi nodejs 中的函数

我开始使用Hapinodejs框架。我正在使用“hapi@17.2.0”,这是我在server.js中启动应用程序的代码。'usestrict';constHapi=require('hapi');constserver=newHapi.Server();server.connection({port:3000,host:'localhost'});server.route({method:'GET',path:'/',handler:function(request,reply){reply('Hello,world!');}});server.start((err)=>{if(er

node.js - nodejs hapi 单页

我有一个应用程序站点(NodeJS),我想从Express迁移到Hapi,我通常做的是提供静态文件并将其他所有内容路由到包含angularjs应用程序和angular路由配置的单个页面。//Expressrouting,firstthestaticfilesapp.use(express.static(__dirname+'/public'));//Secondtheapiroutesapp.get('/api',function(req,res){res.send({api:'response'})});//Finallyeverythingelsemapstothesinglepa

node.js - 如何使用 Server.inject 注入(inject)模拟测试 hapi

我想用实验室测试hapi路由,我使用的是mysql数据库。使用Server.inject测试路由的问题是我不能mock数据库,因为我没有调用包含handler函数的文件,那么如何在handler中注入(inject)mock数据库呢? 最佳答案 您应该可以使用sinon之类的东西模拟你需要的任何东西。例如,假设您在某处有一个dbHandler.js:vardb=require('db');module.exports.handleOne=function(request,reply){reply(db.findOne());}然后在

node.js - hapi.js - 404 路由 VS 静态文件路由

我正在尝试将我的Express应用程序迁移到hapi.js,但我的路线遇到了问题。我只想要2GET:我的索引'/',以及所有不是'/'的东西都重定向到'/'。使用Express我有这个://staticfilesapp.use(express.static(__dirname+'/public'));//indexrouteapp.get('/',function(req,res){//whatever}//everythingthatisnot/app.get('*',function(req,res){res.redirect('/');});我在使用hapi.js时遇到了问题,无