websocket请求头中如何带上cookie?

websocket请求头中如何带上cookie?

阅读 6.9k
2 个回答

带cookie,是为了带token吗,我这有一段ws的带token的方法。

ws = new WebSocket(url, [store.getters.token]);

1. 如果是相同域名的 websocket url,那么可以直接设置 document.cookies,浏览器会在请求的时候自动携带这个 cookies

var authToken = 'R3YKZFKBVi';

document.cookie = 'X-Authorization=' + authToken + '; path=/';

var ws = new WebSocket(
    'wss://localhost:9000/wss/'
);

2. 可以使用 HTTP Auth 的方法,也就是将 auth 信息写在 uri 中

var ws = new WebSocket("ws://username:password@example.com")

3. 使用 SocketIO 作为替代方案

var socket = io("http://localhost", {
  extraHeaders: {
    Authorization: "Bearer authorization_token_here"
  }
});
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题