草庐IT

javascript - Nodejs应用程序结构

我想知道我是否正在相应地构建我的nodejs应用程序以实现最佳性能。我主要关心的是我如何围绕模块移动我的应用程序引用。基本上在我的app.js文件中,我声明了我所有的需求、库等:varapp={config:require('../../config.json'),restify:require('restify'),path:require('path'),mongo:require('mongodb'),model:require('./models.js'),step:require('step'),q:require('q'),api:require('./api_util.j

javascript - 使用 Node.js 和 restify 进行基本身份验证

我目前正在使用NodeJS和restify开发RESTfulWeb服务.我已使用node-mysql为数据库启动并运行所有内容,但我还想实现HTTP基本身份验证。我只用Apache和一个.htaccess文件做了一次。但是这里的网络服务器带有restify,我这样启动它:varserver=restify.createServer({name:'mywebservice'});restify文档(http://mcavage.me/node-restify/#Bundled-Plugins)中列出了一个身份验证解析器插件,但我不知道如何使用它。req.username值始终设置为匿名,

javascript - 获取 restify REST API 服务器以支持 HTTPS 和 HTTP

我正在使用node.jsrestifyver4.0.3下面的简单代码用作支持HTTP的简单RESTAPI服务器。一个示例API调用是http://127.0.0.1:9898/echo/messagevarrestify=require('restify');varserver=restify.createServer({name:'myapp',version:'1.0.0'});server.use(restify.acceptParser(server.acceptable));server.use(restify.queryParser());server.use(restif

JavaScript 内存泄漏 (Node.js/Restify/MongoDB)

更新4:通过在函数外部实例化restify客户端(参见controllers/messages.js)并在每次请求后调用global.gc(),内存增长率似乎已降低很多(每10秒约500KB)。然而,内存使用量仍在不断增长。更新3:遇到这篇文章:https://journal.paul.querna.org/articles/2011/04/05/openssl-memory-use/可能值得注意的是,我将HTTPS与Restify结合使用。更新2:将下面的代码更新为当前状态。我试过用Express替换Restify。遗憾的是,这没有任何区别。似乎链末端的api调用(restify->

javascript - Node.js 休息框架

我计划使用JavaScript编写一个相当大型的Web应用程序。我相信我将使用CanJS开发webapp来组织我的客户端部分。我强烈考虑将Node.js用于我的服务器端组件,但我想知道设置Node以接受和处理REST请求的最佳方法是什么。我做了一些谷歌搜索,发现了一个叫做Express的东西。对此有何评论?如有任何帮助/建议,我们将不胜感激。 最佳答案 restifyisanode.jsmodulebuiltspecificallytoenableyoutobuildcorrectRESTwebservices.http://mca

javascript - Restify 和 Angular CORS 请求的资源上不存在 'Access-Control-Allow-Origin' header

我在使用不记名token授权类型保护的Restify实现RESTapi时遇到了这个问题。当我向API服务器发送简单的获取请求时,它因CORS问题而失败405(MethodNotAllowed)angular.js:7962OPTIONShttp://api.host.com/testsNo'Access-Control-Allow-Origin'headerispresentontherequestedresource.Origin'http://local.host.com'isthereforenotallowedaccess.我的答案中描述了解决方案,所以这对我来说不是真正的问题

node.js - 尝试在 Restify API 中使用 Mongoose 保存模型时不会返回响应

我正在使用Restify和Mongoose为NodeJS构建API。在找到用户并验证其密码后的下面方法中,我试图在将响应发送回用户之前保存一些登录信息。问题是响应永远不会返回。如果我将响应放在保存调用之外和之后,数据永远不会持久保存到MongoDB。难道我做错了什么?过去2天我一直在做这方面的工作,所以帮助会很大。login:function(req,res,next){//Gettheneededparametersvaremail=req.params.email;varpassword=req.params.password;//Iftheparamscontainanemail

Node.js/Mongojs 嵌套数据库回调返回

我正在为session身份验证实现一个restify中间件。该函数包含嵌套的异步数据库调用:db.sessions.findOne()回调中的db.sessions.remove()。'return'语句让我感到困惑,因为我不确定我是从回调中返回next()还是next(err)返回到verifyUserSession(),还是只是从verifyUserSessions返回?我这样做对吗?functionverifyUserSession(req,res,next){if(req.headers.sessionKey){db.sessions.findOne(req.headers.s

node.js - 针对不同类型用户的 MongoDB 数据库设计

我正在为一个有多种类型用户的网站制作一个RESTfulAPI。管理员供应商(公司名称、地址)普通用户(姓名、电话)用户将始终是他们最初注册的身份(永久特化)。我正在使用Mongoose和NodeJS,我为User提出了以下模型,以便我将来可以轻松管理新社交网站的登录。{userType:{type:String,lowercase:true},contact:{email:{type:String,lowercase:true,index:{unique:true,sparse:true}}},accounts:{local:{password:String},facebook:{id

node.js - 在 Mongo-DB 中如何通过 Node restify 为字段设置默认值?

我已经创建了一个名为Group的集合(表),并且我有诸如Groupname、GroupDesc和GroupType之类的字段,但是如果它接收到空值,我需要将Group类型默认设置为1。我要插入以下代码。functionpostNewGroups(req,res,next){varGroup={};Group._id=sequence;Group.GROUP_NAME=req.params.GROUP_NAME;Group.GROUP_DESC=req.params.GROUP_DESC;Group.GROUP_TYPE=req.params.GROUP_TYPE;Groups.save