4

出于某种原因,在 2 或 3 次调用之后,我的 cookie 不再通过。通常,在 3 个请求之后,我的 cookie 从请求中消失。我不知道为什么。我没有进行任何跨域调用。我确实注意到,在响应 Cookie 中返回的 ASPXAUTH cookie(在 Google Chrome、网络检查器中查看)并且是空的响应之一。在“过期”列中,它显示“会话”。因此,似乎我的 cookie 被传回为空,这就是身份验证失败的原因。我只是不知道为什么它适用于 2 次调用然后得到传回。我已经厌倦了将 cookie 设置为不过期,但这不起作用。服务器返回的响应是对 MVC 控制器的调用以返回部分视图。

正常请求:

    Accept:application/json, text/javascript, */*; q=0.01
    Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3
    Accept-Encoding:gzip,deflate,sdch
    Accept-Language:en-US,en;q=0.8
    Connection:keep-alive
    Content-Length:271
    Content-Type:application/json; charset=UTF-8
    Cookie:.ASPXAUTH=7B8EFA9A1F81CE1D400A054827A34719FF7E00161FA065A9637DF42A6F46CE2ECDA40216B88ADCADC0DBA712109BCDCD1A0E712019556C72CA76B52041057C480C6C8274CF0BCEA9DE4891457218B52EB96177754064DC24B0FEC1A0BF51364B16294CED53BAD0CEFC37AA70B92CF29407A307548135C4B7D35060BAE3DDE7031332049B67A62D108F84C1167552D73842B5D4CB83706A6B5787F019184371A8050364F8DFA83F7F1F8AE5A7CF8AB341F25D01E9761C735803D8AAFC97488FF3C7E0B272BCDB669B5E7E17C964402FC9B5E9514A1C105E172D09AB36077C961D5B1079AF6B10B17199AC3320BAC7F0A4A9C28987992D71385531A1E78B18AF7B
    Host:localhost:3182
    Origin:http://localhost:3182
    Referer:http://localhost:3182/Admin/UserAdmin/Profile/e82228b1-abbb-4ecf-a259-12b66f5f07ba
    User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11
    X-Requested-With:XMLHttpRequest

cookie消失后的请求:

Accept:application/json, text/javascript, */*; q=0.01
Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Connection:keep-alive
Content-Length:274
Content-Type:application/json; charset=UTF-8    
Host:localhost:3182
Origin:http://localhost:3182
Referer:http://localhost:3182/Admin/UserAdmin/Profile/e82228b1-abbb-4ecf-a259-12b66f5f07ba
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11
X-Requested-With:XMLHttpRequest

更新 在这个问题上挣扎了一段时间后,我决定不使用表单身份验证并自己动手。我将在未来几天在 GIT 上发布我的解决方案。据我所见,Ajax 请求和表单身份验证后的响应出现了一些奇怪的情况。出于某种原因,即使在生成实际响应之前它是有效的,也会发回一个空的身份验证 cookie。

4

0 回答 0