Tag: cookies

PhantomJS持久性cookies和Javascript

我一直在挣扎着大部分时间。 简而言之,我试图通过Node.js模块与PhantomJS一起loginAmazon。 我的问题的简短版本是,亚马逊给我一个消息,说需要cookies来使用该网站。 这是我目前的资源… NPM的幻影模块 使用PhantomJSloginAmazon的工作示例 这个问题解决PhantomJS中的永久性Cookie 另一个关于由Javascript设置的cookies的SO问题 最后一个问题是特别有趣的,因为第一个答案是针对用户代理(我已经尝试了至less3或4个结果相同),而第二个答案指向了我认为可能是我的问题。 简而言之,亚马逊可能试图通过JavaScript设置testingcookie,然后检查cookie是否设置成功,以确定用户是否允许cookie。 我可以成功地确认我的cookie文件正在被创build,并且Amazon已经在文件中设置了cookie,但是当提交login表单时,这些似乎并不足够,因为在下一页我被cookie警告阻止了。 这导致我相信在这最后一个问题的用户是正确的 – 我的网页的JavaScript不会解雇,尽pipe试图确保它是。 最后,我的page.render显示了一条亚马逊消息,说我需要启用cookie才能继续。 这是我的代码… 'use strict'; /** * Module dependencies. */ var mongoose = require('mongoose'), phantom = require('phantom'), // Admin = mongoose.model('Admin'), Item = mongoose.model('Item'), config = require('../config/config'); /* * Check function. */ module.exports.check= function() { var loadInProgress = false, interval = '', […]

NodeJS – 将variables发送到客户端

嗨,我使用hapi和扩展hapi-auth-cookie示例,并希望在客户端页面上显示“东西”时,但用户login。但不能将我的variables发送到客户端。 服务器: 'use strict'; const Hapi = require('hapi'); const Vision = require('vision'); const Inert = require('inert'); const Path = require('path') const internals = {}; let uuid = 1; // Use seq instead of proper unique identifiers for demo only const rootHandler = function (request, reply) { reply.view('index', { title: 'examples/views/jade/index.js | Hapi ' + request.server.version, […]

Node.js cookie分析器返回编码的字符

我正在使用cookie分析器给用户一个签名的cookie,但我手动解码他们有问题。 服务器用隐藏的hex代码返回cookies(我猜?)。 例: app.use(cookieParser('bar')); … res.cookie('nickname', 'foo', { signed: true }); 然后我有奇怪的%3A字符nickname=s%3Afoo.FHkzIYqqvAuLEKKzpcNGhMjZQ0G88QpHNtxycPd0GFE ,我无法解码 cookieParser.signedCookie('s%3Afoo.FHkzIYqqvAuLEKKzpcNGhMjZQ0G88QpHNtxycPd0GFE', 'bar') 返回相同的string。 当我将%3A更改为:hex编码?)时 cookieParser.signedCookie('s:foo.FHkzIYqqvAuLEKKzpcNGhMjZQ0G88QpHNtxycPd0GFE', 'bar') 我得到了foo – 正确的价值。 有谁知道如何自动处理? 非常感谢您的帮助。

Chrome扩展程序:向使用Cookie凭据(CORS)发送的node.js服务器发出http请求

我一直有一些与我的node.js服务器的问题。 我使用heroku启动它,现在我想要我的Chrome扩展发送http请求到服务器(使用cookie)。 我正在使用express.js作为后端,并且无法正确设置CORS。 这是我在app.js中的: if (process.env.NODE_ENV !== 'production') { app.use(cors({ credentials: true, origin: ['http://localhost:4200', 'http://localhost:8000', 'chrome-extension://kdfekbilmpafgiocanhihiogknfilcio'] })); } else { app.use(cors({ credentials: true, origin: ['chrome-extension://kdfekbilmpafgiocanhihiogknfilcio'] })); } app.use(session({ secret: 'angular shhh secret auth', resave: true, saveUninitialized: true, cookie : { httpOnly: true, expires: new Date(253402300000000) } })); 我正在从我的Chrome扩展(客户端)请求这样的: signUp(user) { const options = { withCredentials: […]

重新加载页面时,用户的login状态在前端丢失

我使用express + mongodb + redis + mongoose作为我的后端提供api。 而且,使用react + react-router + redux作为我的前端。 身份validation是基于sessionId + cookie 。 对于前端,我使用react-router和onEnter挂钩进行身份validation控制。 当用户成功login时,我将后端的用户信息保存到redux存储中。 喜欢这个: const auth = { username: 'novaline', isLogin: true}; 一切都很好。 问题是: 当用户重新加载页面时,在REDX存储中caching的数据被擦除。 是的,我知道,REDEX商店有它的生命周期。 但是,当用户login时,如果他们重新加载页面,由于authentication数据从REDEX存储区中删除,前端将丢失用户信息。 他们的用户名将是未定义的,因为onEnter挂钩,他们将被redirect到login页面。 但是对于后端来说, session还是在redis 。 我知道jwt可以解决这个问题。 但对于我的情况。 用户重新加载页面时如何保持用户的login状态? PS我设置cookie httpOnly和Max-Age 。 所以客户端无法获取或设置cookie 。 __update:__ 我尝试将用户信息保存到localStorage。 所以,当用户login时,重新加载页面,我检查localStorage中是否有用户信息,如果是true,我将重置auth数据,如下所示: const auth = {username: localStorage.getItem('username'), isLogin: true}; 所以,我可以使用它来实现自动login和redirect到home […]

Cookies在本地主机上运行良好,但不适用于VPS

我正在使用nodejs和angularjs 1.6.4。 一切工作在本地主机很好,但是当我通过Github把我的代码推到数字海洋液滴,cookies不起作用。 我保存到Cookie的所有内容都不会显示在Cookie存储中。 为什么会发生? 更新当我进入VPS上的login页面时,出现一个警告: "This page includes a password or credit card input in a non-secure context. A warning has been added to the URL bar" 这是相关的代码: $scope.login = function () { UserService.login($scope.user).then(function (result) { if (result.data.success) { $rootScope.userLogin = result.data.data.name; //—————— var day = new Date(); day.setDate(day.getDay() + 30); var options = […]

Node / Express应用程序使用connect-flash时无法获取Flash消息

当用户成功login到我的应用程序时,我正尝试通过连接闪光灯呈现Flash消息。 我可以控制台登出的消息,但他们似乎并没有得到渲染客户端。 不过,我知道客户端没有什么错,因为当我在路由中用一个简单的stringreplace了req.flash[0] ,比如'You have successfully login!' 那么消息确实出现。 护照configuration: // Local login Strategy passport.use('local-login', new LocalStrategy( { usernameField: 'email', passwordField: 'password', passReqToCallback: true }, (req, email, password, done) => { User.findOne({ 'local.email': email }) .then(user => { if (!user) return done(null, false); user.validPassword(password, (err, res) => { if (err) return done(err); if (!res) return done(null, […]

从服务器端代码获取会话信息到客户端代码

在我正在开发的一个网站上,使用Node,Express和Backbone,我使用常规的HTML表单进行用户login,当成功login时,会创build一个用户会话。 访问这个会话信息在服务器端很容易,让我访问用户名,用户名等,但我不知道如何在Backbone中访问这些信息。 我想要获取UserID,以便我可以像这样创build一个Collection的URL: url: '/api/users/'+ this.userID +'/movies'; 但我不知道如何最好的去获取基于服务器端的会话数据的用户ID。 这是否需要创build另一个模型 – 比如说,一个“用户”模型,通过特定的url / get请求从服务器获取会话数据? 谢谢!

我可以在同一个函数中使用:“response.render”和“response.writeHead”选项吗?

response.render('welcome-page.jade', { title : 'Welcome user!', remoteUser : request.remoteUser, id : "identification" }); // To Write a Cookie response.writeHead(200, { 'Set-Cookie': 'mycookie=test', 'Content-Type': 'text/plain' }); 是否有可能也发送cookie在客户端使用“response.render”,如果不是我怎么能解决这个问题? 提前致谢。

从Sails.js控制器访问cookie

如何从sails.js控制器访问浏览器cookie? 这个: cookie = req.param('cookie', 'No cookie specified'); cookies = req.param('cookies', 'No cookie specified'); 返回默认值('没有指定cookie')。 我应该在客户端读取和写入cookie,还是可以在服务器端完成?