我的API具有身份验证端点A,该端点应返回身份验证cookie。端点B需要身份验证cookie。访问端点A之后,当我访问Chrome中的端点B(在实时VM上,不涉及localhost)时,我的开发机和单独的测试客户端计算机都始终成功进行身份验证。我可以在对端点B的那些请求中看到 cookie 标头。
同时,当从托管VM本身访问活动端点B时,身份验证似乎成功,但是在尝试访问端点B时Chrome被重定向。日志记录表明未在向端点B的请求中发送身份验证cookie。>
在使用Postman时,我的开发机器和VM均会收到 set-cookie 标头(我必须在两台机器上都禁用SSL验证才能正常工作)。
Cookie看起来像这样,尽管我尝试过也没有域,安全和相同站点策略(递增):
cName=cValue; expires=Tue, 11 Jun 2019 02:21:06 GMT; domain=.mydomain.net; path=/; secure; samesite=lax
问题:什么会阻止VM上的Chrome发送Cookie?我曾尝试过调整Cookie的属性,以防出现问题。
上下文:
答案 0 :(得分:0)
我需要学习一些CORS知识才能实现自己的目标。我发现一个非常有用的msdn article。简而言之,为了使浏览器满意并接受服务器上所需的请求,需要对客户端和服务器进行以下更改。
这引起了我的直接问题:
奇怪的是,没有它,它在托管服务器之外的所有地方都可以正常工作,我仍然无法解释。
我需要纠正的其他烦人细节可能使问题蒙上阴影: