2016-09-24 1 views
1

나는 fetch왜 fetch의 응답에서 모든 헤더를 찾을 수 있습니까? 에서 찾을 수 있습니다 '(네트워크

fetch('https://upload.wikimedia.org/wikipedia/commons/4/47/PNG_transparency_demonstration_1.png', { 
 
\t method: 'get' 
 
}).then(function(response) { 
 
    for (var pair of response.headers.entries()) { 
 
     console.log(`${pair[0]}: ${pair[1]}`); 
 
    } 
 
});

아니라 개발자 도구에서 볼 수있는 바와 같이) 모든 헤더의 응답'에서 Set-Cookieresponse header을 차단하기 위해 노력하고있어 그곳에! 왜 그런가요? 내가 찾는 헤더를 얻을 수있는 방법이 있습니까?

설명을 위해 쿠키를 찾고 있지 않지만 Set-Cookie 헤더가 전송 된시기를 알고 싶습니다.

+0

'https://google.com/를로드 할 수 없습니다 API를 가져옵니다. 'Access-Control-Allow-Origin'헤더가 요청 된 리소스에 없습니다. 따라서 'https://www.google.com'원본은 액세스 할 수 없습니다. 만약 불투명 한 응답이 당신의 필요에 부응한다면, CORS가 비활성화 된 상태에서 자원을 가져 오기 위해 요청 모드를 'no-cors'로 설정하십시오.' – guest271314

+0

@ guest271314 왜냐하면'Access-Control-Allow-Origin : *' . 아시다시피, 제게 말해주십시오. – Mehran

+0

현재 질문에서''/ "'을 URL로 사용하십시오. – guest271314

답변

2

금지 된 것으로 선언 된 Set-Cookie 헤더를 읽을 수 없습니다. XMLHttpRequest를, 서버가 금지 헤더 이름이고, 따라서 프로그래밍 방식 response.headers 읽을 수 없습니다 에서 반환 된 설정 - 쿠키 응답 헤더와 마찬가지로

: GitHub의에 fetch polyfill 합리적인 설명을 제공합니다. 도망(). 대신 새 쿠키를 처리하는 것은 브라우저의 책임입니다 ( 현재 URL에 적용 가능). HTTP 전용 인 경우를 제외하고는 이라는 새로운 쿠키가 document.cookie를 통해 제공됩니다.

https://github.com/github/fetch#receiving-cookies