jquery getResponseHeader always returns 'undefined'?

后端 未结 3 727
失恋的感觉
失恋的感觉 2021-01-11 09:27

I have a a form that I am submitting via ajax. I am using the jquery form plugin. What I am trying to do is get the \'Location\' header which is returned from my server.

3条回答
  •  悲&欢浪女
    2021-01-11 10:18

    If this is a CORS request, you may see all headers in debug tools (such as Chrome->Inspect Element->Network), but the xHR object will only retrieve the header (via xhr.getResponseHeader('Header')) if such a header is a simple response header:

    • Content-Type
    • Last-modified
    • Content-Language
    • Cache-Control
    • Expires
    • Pragma

    If it is not in this set, it must be present in the Access-Control-Expose-Headers header returned by the server.

    About the case in question, if it is a CORS request, one will only be able to retrieve the Location header throgh the XMLHttpRequest object if, and only if, the header below is also present:

    Access-Control-Expose-Headers: Location
    

    If its not a CORS request, XMLHttpRequest will have no problem retrieving it.

提交回复
热议问题