我希望能夠從一個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