我有一个 socket.io 应用程序,最近我收到了这个警告:
与URL上的跨站点资源关联的 cookie设置为没有该
SameSite
属性。未来版本的 Chrome 将仅在跨站点请求中使用SameSite=None
和设置 cookie 时才传送 cookieSecure
。您可以在应用程序>存储>Cookies 下的开发人员工具中查看 cookie,并在https://www.chromestatus.com/feature/5088147346030592和 https://www.chromestatus.com/feature/5633521622188032 上查看更多详细信息 。`
显然,Chrome 将来会更新它: SameSite 警告 Chrome 77
我已经尝试过这个,但没有明显的效果:io = io.listen(server, { cookie: false });
我认为 cookie 没有任何作用,那么如何禁用 io 设置呢?
根据 Socket IOs 的 github repo 中报告的问题,该 cookie 不用于任何事情;您可以通过cookie: false
在服务器选项中设置来禁用它。
但是您错过的是{cookie: false}
初始化套接字时的设置选项,而不是http.listen
. 下面提供的解决方案对我有用,它使用 express 作为服务器。
var server = require('http').createServer(express());
var io = require('socket.io')(server, { path:"/some/path", cookie: false });
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3391 次 |
最近记录: |