在使用UnityWebRequest.Post登录后,浏览器中可以看到
其中包含了Set-Cookie,但是在GetResponseHeaders()中没有。
使用Addressable加载资源时也无法通过
request.SetRequestHeader("Cookie", cookies);
或者
request.SetRequestHeader("withCredentials", "true");来发送验证。
您无法在 javascript 中读取或写入 "Set-Cookie" 标头,因为浏览器会将其隐藏起来,因为它是一个禁止标头。
原因
unity2021.3不再使用XMLHttpRequest发送请求,而是改用fetch发送请求,并且默认是不发送cookie的。
解决办法
申请中须要带有cookie时, 可在fetch办法的第二个参数对象中增加credentials属性,这里加入了include参数。
修改load.js中fetch方法参数。
参考连接
UnityWebRequest WebGL 缺少 Cookie 响应标头答案 - 爱码网 (likecs.com)
Can't set cookie header in WebGL with UnityWebRequest - Unity Forum