Articles of google chrome

如何禁用V8的优化编译器

我正在写一个常量string比较函数(对于node.js),并希望禁用V8的这个单一函数的优化编译器; 使用命令行标志是不可能的。 我知道使用with{} (或try / catch)块会立即禁用优化编译器,但是恐怕这个“function”(bug)将在未来的版本中得到修复。 有没有一个不可变的(和文件)的方式禁用V8的优化编译器? function示例: function constantTimeStringCompare( a, b ) { // By adding a `with` block here, we disable v8's optimizing compiler. // Using Object.create(null) ensures we don't have any object prototype properties getting in our way.our way. with ( Object.create( null ) ){ var valid = true, length = Math.max( […]

由于Chrome预加载导致护照FacebookTokenError

我正在开发一个Web应用程序,允许用户使用Passport.js通过Facebooklogin。 我的代码如下: /* Passport.js */ var passport = require('passport'); var FacebookStrategy = require('passport-facebook').Strategy; /* DB */ var User = require('../models/db').User; exports.passport = passport; passport.use(new FacebookStrategy( { clientID: '<ID>', clientSecret: '<SECRET>', callbackURL: 'http://localhost:4242/auth/facebook/callback' }, function (accessToken, refreshToken, profile, done) { console.log(profile.provider); User.findOrCreate({ "provider": profile.provider,"id": profile.id }, function (err, user) { return done(err, user); }); } )); […]

使用从chrome到node-http2服务器的HTTP / 2时,请参阅多个TCP连接

更新(对于任何对结果感兴趣的人:) 我无法弄清为什么chrome和node-http2服务器之间的下一个协议协商失败。 我的怀疑是自签名证书或ALPN / NPN支持问题。 所以我搬到了golang HTTP / 2的实现 。 相同的设置完美地工作,我看到单个多路复用的TCP连接(铬 – > golang) 我一直在阅读关于HTTP / 2的知识,以及它如何通过每个主机的单个多路复用TCP连接来解决HTTP / 1.1的延迟问题,所以我决定尝试一下。 本实验 创build一个简单的HTML文件,引用一个CSS,一个JS和几个图像。 Node.js中的一个简单的http服务器,它提供所有这些文件 使用chrome发出http请求 在Ubuntu上使用tcptrack( tcptrack )来跟踪到http服务器的TCP连接。 tptrack窗口显示build立了4个连接。 所以浏览器打开不同的连接图像和CSS / JS请求。 我使用tcpdump获得类似的输出。 供参考使用的tcptrack命令是 tcptrack -d -i eth0 -r 3600端口8989 而tcpdump也显示类似的输出 tcpdump -i eth0 -nns 0“dst port 8989 and tcp [tcpflags] == tcp-syn” 服务这些文件的简单的一台http服务器就像下面这样(相关的代码) (function(){ ……….. var […]

Node.js在图像上表示静态服务器挂起 – 仅Chrome

这是一个非常奇怪的bug,一直困扰着我很长一段时间。 我有一个基本的网站使用快速静态中间件,除了单独的路线,呈现翡翠。 这是我的configuration app.set('views', __dirname + '/views'); app.set('view engine', 'jade'); app.use(stylus.middleware({ src : __dirname + '/public', dest : __dirname + '/public', compile : function(str, path) { return stylus(str) .set('filename', path) .set('compress', true) .use(nib()) } })); app.use(bodyParser.urlencoded({ extended: false })) app.use(bodyParser.json()) app.use(cookieParser()) app.use(session({ secret: conf.sessionSecret, store: new RedisStore(), saveUninitialized: true, resave: true })); app.use(express.static(__dirname + '/public')) […]

Node.js可以调用Chrome吗?

运行在桌面上的Node.js是否可以生成Chrome浏览器窗口? 我想在Node.js接收事件时启动一个提供窗口大小和位置的Chrome浏览器。 sys shell命令是唯一的方法吗?

websocket的基本authentication

当我使用chrome创build一个新的websocket new WebSocket('ws://gert:passwd@127.0.0.1:8001/dbname') nodejs服务器接收 GET /dbname HTTP/1.1 Upgrade: WebSocket Connection: Upgrade Host: 127.0.0.1:8001 Origin: http://127.0.0.1:8000 Sec-WebSocket-Key1: ' 5 5) 4 1e a9 9 0 19 Sec-WebSocket-Key2: 3000909100 Q 我如何检索gert和passwd?

有没有办法正则expression式引用Node.js中的string?

我想创build一个正则expression式匹配stringfoo ,即使foo包含元字符。 这有时被称为RegExp.quote 。 有没有办法在Node.js环境(或者更广泛地说,v8 / Chrome / WebKit / JavaScript)中执行此操作?

websocket问题:无法连接到node.js服务器

我已经得到了一个node.js服务器,运行express,我试图build立一个使用socket.io服务器端和chrome 12客户端的websocket连接。 当我尝试连接时,socket.io输出一条debugging消息,说“销毁nonsocket.io升级”,并在我的连接处理程序中的代码不运行。 同样在客户端,我的套接字的readyState是2(CLOSING)。 readyState的套接字从0更改为2

Node.js / Expresscaching

我对Node.js / Express很新,但是我想我正在慢慢地掌握它。 我已经添加了这个代码,从我可以告诉,这似乎是非常标准的: app.configure('production', function() { var oneYear = 31557600000; app.use(express.static(__dirname + '/public', { maxAge: oneYear })); app.use(express.errorHandler()); }); 浏览一下Chrome的caching,发现是的,一切都在caching。 欢呼! 但是,当我在我的网站上运行Chrome浏览器(我注意到,在其他基于Node的网站上)时,Chrome则表示该网站没有caching任何内容。 什么可能导致这种差异?

节点与Chrome,将console.log分配给一个variables?

当我将console.log分配给node.js中的variables时,它工作正常, var l = console.log l(1) # outputs 1 但是,如果我在Chromium 30的开发工具中做同样的事情, var l = console.log l(1) # TypeError: Illegal invocation 如何在Chromium的开发工具中不起作用? 为什么我得到, TypeError:非法调用