Get the cookie from an HTTP request header

时间:2015-07-28 22:33:07

标签: javascript http

On Google Chrome, when I look at the HTTP request headers under the "Network" tab using the chrome console, it provides me the following request headers:

Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding:gzip, deflate, sdch
Accept-Language:en-US,en;q=0.8
Cache-Control:max-age=0
Connection:keep-alive
Cookie:ASP.NET_SessionId=nlbupfbt32jda1tziep4p21r; .ASPXAUTH=8C94786DD4A3C03C5548973E04A76FF554F38D6EB74E0B006AB3C3F72684E94DC0469E28D22E4BBFA069B82B1CCFB4203627D998990C6C96897DDBB0F611809175D5F06F015604082481F0079AE48DAB7974F3D63242055BEC75F707C545666C67B7C9D9E53F7531020235881E9DA4F3C26FD02B0ED0971D02C64DFE96F67C745119F44BBC9E46DC2CEF61D639EA01B9
... more headers ...

What I am trying to get is the data under Cookie. I have tried document.cookie but it returns an empty string. How can I grab that cookie information?

2 个答案:

答案 0 :(得分:1)

document.cookies returns nothing because the cookie is almost certainly marked with the HttpOnly attribute.

The presence of this attribute tells the browser to disallow access to the cookie value via document.cookie.

This is a security measure to prevent against session hijacking via cross-site scripting mostly.

答案 1 :(得分:0)

If the cookie was set with the http-only flag, you can't read it using JavaScript - this is a security measure to prevent session hijacking and should be set for any surrogate identifier including session cookies.