Niedawno przeniosłem się z aplikacji internetowej Express do aplikacji BrowserSync dla nodejs. Korzystanie Express, gdybym chciał ustawić cookie, mój config będzie wyglądać mniej więcej tak:Jak ustawić plik cookie sesji za pomocą oprogramowania pośredniego BrowserSync?
var express = require('express');
var session = require('express-session');
var finalhandler = require('finalhandler');
var serveStatic = require('serve-static'),
serve = serveStatic(__dirname);
var app = express();
app.use(session({ // see https://github.com/expressjs/session
secret: 'keyboard cat',
resave: false,
saveUninitialized: false
}))
.use(function(req, res, next) {
res.cookie('myCookie', 'my cookie value');
var done = finalhandler(req, res);
serve(req, res, done);
});
app.listen(8080);
Mój zespół zaczął używać BrowserSync (poprzez zadania łyk), a mój config, do tej pory, wygląda mniej więcej tak :
var gulp = require('gulp'),
browserSync = require('browser-sync'),
gulpLoadPlugins = require('gulp-load-plugins'),
plugins = gulpLoadPlugins();
gulp.task('browser-sync', function() {
browserSync({
server: {
baseDir: "./",
middleware: [
function(req, res, next) {
res.cookie('myCookie', 'my cookie value');
next();
}
]
},
port: 8080
});
});
Jednak obiekt res
nie ma metody o nazwie "cookie". Czy jest coś podobnego do session middleware for Expressjs, które będzie działać jako oprogramowanie pośredniczące BrowserSync? Czy istnieje inny sposób ustawiania plików cookie na serwerze BrowserSync?
Nie działa to dla mnie, mówi mi "TypeError: res.cookie nie jest funkcją". Czy to nadal działa dla Ciebie? Jestem na browserSync 2.8.2 –