Tag: 连接

connect(node.js)中的访问控制源

我通过连接运行静态页面 var connect = require('connect'); connect.createServer( connect.static(__dirname)).listen(8080); 我必须在上面的代码中添加一个响应标题来绕过访问控制 response.writeHead(200, { 'Content-Type': 'text/html', 'Access-Control-Allow-Origin' : '*'}); 我如何将它添加到上面的连接代码。

使用express.json而不是express.bodyparser

我正在构build一个简单的REST API,我只想接受JSONinput。 我select使用app.use(express.json({strict: true})); 而不是app.use(express.bodyParser()); 。 我正在通过strict: true想法,这将增加一层针对无效json的安全性。 任何人做类似的事情? 寻找来自具有此设置经验的人的意见。 谢谢

使用express / connect-redis抓取页面上的现有会话

使用connect,express和socket.io,我试图让我的应用程序重新连接时获取会话的详细信息。 我的会话显然是在客户端连接的情况下工作的,但是如果我在浏览器上刷新页面,它会忘记一切。 我的会话cookie肯定是一样的,所以不是这样的。 我的代码是我从很多不同来源获取的一些片段,因为似乎没有一个完整的示例应用程序。 : – / 我错过了什么? var qs = require('querystring'), express = require('express'), app = express.createServer(), io = require('socket.io').listen(app.listen(8000)), routes = require('./routes'), pCookie = require('connect').utils.parseCookie, Session = require('connect').middleware.session.Session, RedStore= require('connect-redis')(express), sStore = new RedStore(); // Configuration app.configure(function(){ app.set('views', __dirname + '/views'); app.set('view engine', 'ejs'); app.use(express.bodyParser()); app.use(express.methodOverride()); app.use(express.cookieParser()); app.use(express.session({ store: sStore, secret: 'tehsecretz' })); […]

nodejs连接会话cookie不在某些机器上设置

我在我的nodejs应用程序上有一个最小连接会话设置: connect.cookieParser(), connect.session({ secret: 'asdfg', cookie: { maxAge: 60 * 60 * 1000 }}), 但是,当在其他机器上testing我的网站时,会话cookie根本不会被设置。 在我的Mac上,Chrome和Firefox都像正常一样设置会话cookie。 在我的虚拟Windows上,会话cookie不会在Chrome或Firefox上设置。 在一个朋友的Windows上,会话显然没有被设置,但在另一个朋友的Windows上,会话似乎正在工作。 我检查了我的虚拟Windows Chrome上的Cookie设置和标题,但似乎没有什么不同,它只是拒绝创build一个cookie … 任何想法为什么会话cookie显然会被设置在一些机器上,而不是其他的?

Connect的会话中间件的签名cookie如何工作?

我想要解释一下connect.sid cookie如何在Connect Node.js框架中工作。 我注意到他们是形成的, s:hash.signature 我不明白如何使用签名,当散列能够被用来从内存存储或redis存储访问会话数据。 另外,我不明白为什么s:甚至在cookie中; 这是什么目的。 我听说签名被用来“签名”散列。 究竟是“签名”还是“签名”? 我也需要对这个过程进行解释。 谢谢!

关于express.cookieSession()的几个问题

在我的node.js服务器(运行express和socket.io )上,当一个人连接时,我将它们添加到一个数组中,并将它们在数组中的位置保存到它们的会话中,这样每个连接都可以访问它们自己的信息,如下所示: session.person_id = people.length; session.save(); people.push(new Person()); //people[session.person_id] => Person 我在会话中唯一保存的是person_id 。 我一直在使用express.session()来处理这个问题,直到我开始将信息发送给一次连接的所有人。 当我循环连接并获得他们的会话时,有时(我不知道如何计算错误) session存在,但不是session.person_id 。 无论如何,我希望通过改变我存储会议的方式,它可以帮助我找出我的问题。 所以我有几个问题,我无法在任何地方find答案。 从express.cookieSession()的cookie存储在哪里? 服务器端还是客户端? express.cookieSession()是否允许在负载均衡器后面运行多个服务器? 使用express.cookieSession()时,用户是否可以操作会话数据?

如何在Node.js中创build绝对链接?

我使用Express,Connect和Jade来使用Node.js。 我想在我的应用程序中提供一个绝对的路线链接,但我找不到如何做到这一点。 我必须错过一些东西,因为这看起来很简单。 我可以这样做:/ myroute 但是我想要的是: http:// localhost:3000 / myroute 在某个地方一定有帮手,对吗?

如何引用connect.server()中的根?

我正在使用gulp-connect,我的所有.html文件都在我的项目根目录中。 这是我的gruntfile.js var gulp = require('gulp'); var connect = require('gulp-connect'); gulp.task('connect', connect.server({ root: '/', port: 8000, livereload: true, open: { file: 'index.html' } })); 我试过root: '' , root: '.' 以及声明什么都没有,他们都没有404文件没有发现错误,但如果我把我的.html移动到子目录,如dist和声明root: 'dist' ,它工作。 请帮助,如何设置connect.server()的根选项来查找我的项目的根目录中的文件? 谢谢。

使用msnodesqlv8节点可信连接

我试图使用msnodesqlv8驱动程序连接到SQL服务器。 现在我得到一个错误(TypeError:sql.connect不是一个函数),然后我尝试连接到msql驱动程序,我得到了答复,但我真的需要使用可信连接。 我的代码: var express = require('express'); var app = express(); app.get('/', function (req, res) { var sql = require("msnodesqlv8"); console.log(sql); // config for your database var config = { server: 'sqlServername', database: 'myTestDatabase', driver: "msnodesqlv8", options: { trustedConnection: true } }; // connect to your database sql.connect(config, function (err) { if (err) console.log(err); // […]

创buildTCP服务器时连接的标识是什么?

我正在使用node.js来创build一个TCP服务器,每个连接将是持久的。 已知node.js是单一进程,如何区分每个连接? 有没有像连接ID?