我正在尝试编写简单的测试来测试我的NodeJS socket.io应用程序。问题是在握手阶段我确实需要某些值(两个cookie和标题)。这就是我现在所拥有的:
var options = {
transports: ['websocket'],
'force new connection': true,
headers: {'accept-langauge': 'foo'}
};
it("send data", function(done) {
var client = io.connect('http://localhost:3000', options);
client.once("connect", function(s) {
expect(s.handshake).to.not.be(undefined);
expect(s.handshake.headers).to.be.an('object');
expect(s.handshake.headers['accept-language']).to.be('en');
client.once("send_premise_to_snet", function(id) {
id.should.equal("123");
client.disconnect();
done();
});
client.emit("send_data", 123);
});
});
我希望能够设置接受语言和cookie,以便它们出现在握手中,从而可以通过握手属性访问。
在普通浏览器中,浏览器会正确填充标题,现在我也想在测试阶段进行填充。
答案 0 :(得分:0)
使用正确的Google查询字词成功点击后,我设法找到了更多信息。目前似乎无法使用当前的socket.io和socket.io-client实现。
几乎没有采用其他方法,但没有一种方法能够实现真正的包装。
更多信息: