gulp - BrowserSync 共享 session

标签 gulp browser-sync

我想使用 BrowserSync 在 COTS(商业、现成)系统上进行一些测试和开发 - 就像 Sharepoint,但它不是 Sharepoint。

由于这是一个 COTS 系统,我们无法禁用的安全功能之一是它只允许每个用户 ID 一个事件 session 。由于 COTS 系统检测到多个用户登录,同步多个浏览器并尝试登录将会失败。

有没有办法让浏览器同步将窗口/浏览器视为“主” session ,并使用主窗口的响应简单地重新绘制“从属”?与复制所有操作并导致从不同浏览器发送多个请求相反?

最佳答案

我遇到了同样的问题,这是我的解决方案(我在 BS 中保存 cookie 并一直使用它,它对我来说效果很好):

gulp.task('browser-sync', function () {
    var cookies = {};

    browserSync.init({
        proxy: {
            target: "localhost",
            proxyReq: [
                function (proxyReq) {
                    var cookieText = Object.keys(cookies).map(function (name) {
                        return name + '=' + cookies[name];
                    }).join('; ')
                    if (proxyReq._headers.cookie) {
                        proxyReq.setHeader('cookie', cookieText);
                    }
                }
            ],
            proxyRes: [
                function (proxyRes, req, res) {
                    if (proxyRes.headers && proxyRes.headers['set-cookie']) {
                        proxyRes.headers['set-cookie'].forEach(function (cookie) {
                            var name, value;
                            var t = cookie.split(';')[0].split('=');
                            name = t[0];
                            value = t[1];
                            cookies[name] = value;
                        });
                    }
                }
            ]
        }
    });
});

关于gulp - BrowserSync 共享 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40740965/

相关文章:

javascript - 如何通过 JS 中的 WebPack 包提供全局 TypeScript 类

node.js - 命令行浏览器同步检测更改,不刷新页面

node.js - BrowserSync 无法在安装了 Nginx 的 VPS 上运行

node.js - 如何为使用动态 URL 路由的 Node/React 项目设置 gulp browser-sync

gulp - browserSync.reload 和 browserSync.stream()) - 有什么区别?

javascript - 使用 gulp 删除 index.html 的正文内容

node.js - 如何将可读流通过管道传递给 gulp.dest()?

flask - Browsersync 服务器 - 需要不同的 html 和 css 路径才能重新加载

google-chrome - Livereload 无法使用 Gulp 在 Chrome 中运行,我错过了什么

javascript - 使用 Visual Studio 2015/Community/Visual Studio Code 开发时如何调试 gulp 插件?