为了账号安全,请及时绑定邮箱和手机立即绑定

使用Node.js HTTP Server获取并设置单个Cookie

使用Node.js HTTP Server获取并设置单个Cookie

蛊毒传说 2019-10-24 14:00:19
我希望能够设置一个cookie,并在对nodejs服务器实例的每个请求中读取单个cookie。是否可以用几行代码来完成,而无需引入第三方库?var http = require('http');http.createServer(function (request, response) {  response.writeHead(200, {'Content-Type': 'text/plain'});  response.end('Hello World\n');}).listen(8124);console.log('Server running at http://127.0.0.1:8124/');只是尝试直接从nodejs.org中获取上述代码,然后在其中工作一个cookie。
查看完整描述

3 回答

?
holdtom

TA贡献1805条经验 获得超10个赞

如果您使用Express库,就像许多node.js开发人员一样,则有一种更简单的方法。查看Express.js文档页面以获取更多信息。


上面的解析示例有效,但是express为您提供了一个很好的功能来解决这一问题:


app.use(express.cookieParser());

设置Cookie:


res.cookie('cookiename', 'cookievalue', { maxAge: 900000, httpOnly: true });

清除Cookie:


res.clearCookie('cookiename');


查看完整回答
反对 回复 2019-10-24
?
慕神8447489

TA贡献1780条经验 获得超1个赞

RevNoah最好的答案是使用Express的cookie解析器。但是,这个答案现在已经3年了,已经过时了。


使用Express,您可以按以下方式读取Cookie


var express = require('express');

var cookieParser = require('cookie-parser');

var app = express();

app.use(cookieParser());

app.get('/myapi', function(req, resp) {

   console.log(req.cookies['Your-Cookie-Name-Here']);

})

并package.json用以下内容更新您的版本,替换相应的相对最新版本。


"dependencies": {

    "express": "4.12.3",

    "cookie-parser": "1.4.0"

  },

此处 和此处介绍了诸如设置和解析Cookie的更多操作


查看完整回答
反对 回复 2019-10-24
  • 3 回答
  • 0 关注
  • 813 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信