> 백엔드 개발 > Golang > Localhost의 브라우저에 내 HTTPOnly 쿠키 설정이 없는 이유는 무엇입니까?

Localhost의 브라우저에 내 HTTPOnly 쿠키 설정이 없는 이유는 무엇입니까?

Susan Sarandon
풀어 주다: 2024-11-18 19:55:02
원래의
178명이 탐색했습니다.

Why Aren't My HTTPOnly Cookies Setting in the Browser on Localhost?

HTTPOnly 쿠키가 로컬 호스트의 브라우저에서 설정되지 않음

문제:

REST API에서 HTTPOnly 쿠키를 생성하는 로그인 엔드포인트를 사용하면 Postman을 통한 POST 요청이 올바르게 작동했음에도 불구하고 쿠키가 더 이상 브라우저에 설정되지 않았습니다. 이 문제는 이전에 작동했던 접근 방식을 사용해도 발생했습니다.

사용된 접근 방식:

  • REST API의 최소 Go 구현을 만들었습니다.
  • Express 및 axios를 사용하여 Node 구현을 생성했습니다.
  • 헤더 응답을 분석하고 프런트 엔드 코드를 테스트했습니다.

결과:

  • Go 및 Node API 모두 응답 헤더에 HTTPOnly 쿠키를 보냈습니다.
  • 그러나 테스트한 브라우저에서는 쿠키가 설정되지 않았습니다.

해결책:

클라이언트 측 JavaScript(fetch() 메소드)에 문제가 있었습니다. RequestInit 객체에 'credentials: "include"' 옵션을 추가함으로써 브라우저는 요청과 함께 쿠키를 보내고 받을 수 있었습니다. 이는 브라우저에서 HTTPOnly 쿠키를 설정하는 데 필요합니다.

추가 정보:

  • Axios는 '자격 증명: "포함"' 옵션을 자동으로 설정합니다.
  • Axios를 사용하는 경우 브라우저 쿠키 설정을 활성화하려면 요청의 세 번째 구성 인수에 'withCredentials: true'를 포함해야 합니다.

위 내용은 Localhost의 브라우저에 내 HTTPOnly 쿠키 설정이 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿