我希望能够从一个NodeJS进程创建一个socket.io-client连接,重用现有的HTTP代理(如superagent或request)进行初始握手。因此,希望发送任何相关的cookie与握手的HTTP请求。如何在nodeJS进程中创建socket.io-client,为其初始handhsake重用现有的HTTP代理?
我期望的行为是在浏览器中使用socket.io客户端时发生的情况,而XHR请求握手时发送域/ URL的现有cookie。
我希望能够从一个NodeJS进程创建一个socket.io-client连接,重用现有的HTTP代理(如superagent或request)进行初始握手。因此,希望发送任何相关的cookie与握手的HTTP请求。如何在nodeJS进程中创建socket.io-client,为其初始handhsake重用现有的HTTP代理?
我期望的行为是在浏览器中使用socket.io客户端时发生的情况,而XHR请求握手时发送域/ URL的现有cookie。
使用相同的HTTP代理将无法解决您的问题。本身,nodejs不保存客户端cookie。
如果您想保存它们以便将来客户端请求发送它们,您必须自己保存并发送它们或获取可帮助为您做到这一点的模块。
看到这些其他问题以供参考:
NodeJS and HTTP Client - Are cookies supported?
How do I create a HTTP Client Request with a cookie?
How to maintain a request session in NodeJS
Can I send a GET request with cookies in the headers in Node?
Making HTTP Requests in Node.js
request module支持一个饼干罐的选项,它将记住您的饼干。
感谢您的回复。我知道这个请求支持这个选项。 superagent也是如此。 不过,我的问题依然存在。假设我保存了所有这些链接所建议的cookie,我如何指定socket.io-客户端来使用这个HTTP客户端实例作为它的handhsake。 – Osk