草庐IT

expressive

全部标签

javascript - 使用 Supertest 和模拟数据库进行 Express JS 集成测试

是否可以使用supertest测试ExpressJSRESTAPI,但用模拟数据库对象替换实际的数据库连接?我有涵盖数据库模型和应用程序其他部分的单元测试以及建立实际数据库连接的API端点的功能测试,但我有一个奇怪的要求来创建类似于功能测试但使用模拟数据库连接的集成测试。下面是一个示例端点Controller:varmodel=require('../../../lib/models/list');module.exports={index:function(req,res){vardata={key:'domains',table:'demo.events'};vardataMode

javascript - 语法错误 : Invalid regular expression: missing/

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。关闭8年前。这个问题是由于打字错误或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助future的读者。这个问题似乎是题外话,因为它缺乏足够的信息来诊断问题。更详细地描述您的问题或includeaminimalexample在问题本身。Improvethisquestion根据http://www.regexr.com/38o5d我的reqex似乎可以工作,但是当我将它实现到我的javascript中时varprefix=hash.replace(/\

javascript - Node/ express : Error: Failed to lookup view "error" in views directory

我将我的nodejs模板引擎切换到了ejs(来自jade)。当我使用我的ejs模板运行我的app.js时,我收到一系列“无法在View中查找View‘错误’”日志。其中一些包括:GET/css/bootstrap.min.css50012.588ms-1390Error:Failedtolookupview"error"inviewsdirectory...GET/css/clean-blog.min.cssError:Failedtolookupview"error"inviewsdirectory...GET/js/bootstrap.min.jsError:Failedtoloo

javascript - 如何在 Node.js Express 中让我的 session 最后跨子域?

我要http://mydomain.com与http://www.mydomain.com相同以及所有其他子域。我希望session和cookie保持不变! 最佳答案 与Express无关。重要的是cookie本身的设置。将其域设置为.mydomain.com,您应该没问题。编辑:OP想要更多详细信息,因此这里是代码中的示例。connect.createServer(connect.cookieParser(),connect.session({cookie:{domain:".mydomain.com"}}));和res.cook

javascript - Node.js、Express、i18n 中的国际化

我将Node.js与Express框架和i18nmodule一起使用.所以我用vari18n=require('i18n');app.configure(function(){[...]app.use(i18n.init);app.use(app.router);});在我的应用程序设置中。一切正常,但我真正需要的是强制i18n使用我想要的语言。场景如下:当用户未登录时,i18n在accept-languageheader中搜索langauage就可以了。但是当用户登录时,我想在用户设置的某个地方保存所选的语言,检索它并强制i18n模块使用这种语言。如何做到这一点(假设我已经知道如何将

javascript - 存在哪些 Express websocket 事件?

我想知道存在哪些websocket事件到目前为止我只使用了ws.on('message')事件,但我想使用一个在连接时触发的事件建立和关闭。我尝试添加ws.on('connection'),但没有被触发。我的代码:app.ws('/',function(ws,req){ws.on('message',function(textChunk){//dostuff}});});我需要一些客户端编程来做到这一点吗?我尝试添加这个,但是当我从我的客户端连接时它没有触发。ws.on('request',function(){console.log("request");});

javascript - 编写 express.js 应用程序。辅助方法去哪里了?

所以我开始使用express.js——我的第一个JS网络开发框架。我没有做任何小事,而是开始了一个更大的项目。我在学习,同时也在build。来自Python/Flask背景,express似乎非常复杂。就像在python中一样,如果我想要一个辅助方法,我可以将它放在文件顶部或新模块中,然后导入它。super简单。但是在node/express中,事情是异步的,一切都在exports或module.exports中(??)。辅助方法去哪里了?我如何通过回调调用它们?在anotherquestion我问,我多次进行相同类型的计算。在Python中,我会编写一个方法(带有if语句和参数),并

javascript - 在Node.Js Express中, "res.render"是否结束http请求?

所以,只有在您确定一切都已完成时才执行“res.render”,对吗?因为它结束了请求并弹出了一个网页。 最佳答案 如果您不提供对res.render(view[,options[,fn]])的回调,它将自动给出一个带有200HTTPStatus和Content-Type的响应:text/htmlres.render('view',{},function(){while(true);//shouldblock});res.render(view[,options[,fn]])Renderviewwiththegivenoptions

javascript - 从 express.js 中删除所有 header

我正在创建一个页面,其中有一些数据会被另一台设备解析。我以前用php来做这个,但我正在把它移到node.js上。我需要从页面中删除所有标题,所以我只有我的输出。此输出是对GET请求的响应。目前我有HTTP/1.1200OKDate:Wed,11Sep201311:54:14GMTConnection:closeMyoutput我需要它来显示Myoutput 最佳答案 通常,您可以使用Express(node.js)中Response对象的API来删除header,但是,其中一些header是HTTP规范所必需的,应该始终存在。Dat

javascript - 在 Express.js 中使用相同的响应对象发送多个响应

我有一个长时间运行的进程,需要在多个阶段发回数据。有什么方法可以用express.js发回多个响应吗?res.send(200,'hello')res.send(200,'world')res.end()但是当我运行curl-XPOSTlocalhost:3001/helloworld时,我得到的只是hello我怎样才能发送多个回复,或者这不能用express来做? 最佳答案 使用res.write()。res.send()已经调用了res.end(),这意味着在调用res.send(这也意味着您的res.end()调用没有用)。编