programing

window.location에 http 헤더를 추가하고 있습니다.Angular 앱의 href

kakaobank 2023. 3. 23. 22:54
반응형

window.location에 http 헤더를 추가하고 있습니다.Angular 앱의 href

각도 없는 html 페이지로 리다이렉트 할 필요가 있는 각도 있는 앱이 있기 때문에, 그 앱을 사용하면 된다고 생각했습니다.$window.location.href각진 앱을 외부 사이트로 리디렉션합니다.이것은 실제로 정상적으로 동작합니다만, 컨텐츠(스태틱 컨텐츠도)를 제공하기 전에 인증 토큰을 체크하는 nodejs/express 백엔드가 있습니다.

이를 위해서는 http 요청 헤더로 인증 토큰을 전송해야 합니다.다음 질문입니다.

Can/How do you can/how to add auth token to the request(요구에 인증 토큰을 추가하는 방법)$window.location.href전송되기 전에요?

사용할 때$window.location.href브라우저가 당신의 JavaScript 코드가 아닌 HTTP 요청을 하고 있습니다.따라서 다음과 같은 커스텀헤더를 추가할 수 없습니다.Authorization토큰 값을 입력합니다.

JavaScript를 통해 쿠키를 추가하고 인증 토큰을 넣을 수 있습니다.쿠키는 브라우저에서 자동으로 전송됩니다.단, 쿠키와 헤더를 사용하는 보안상의 영향을 검토해야 합니다.둘 다 JavaScript를 통해 액세스할 수 있으므로 추가 공격 벡터는 없습니다.새로운 페이지가 로드된 후에 cookie를 삭제하지 않으면 CSRF 부정 이용을 이용할 수 있습니다.

토큰이 브라우저 이력, 액세스로그 등에 기록되는 URL에 공개되기 때문에 이 답변은 안전하지 않습니다.대신 도메인 쿠키를 사용하십시오.로컬 설정에서 쉽게 디버깅할 수 있으므로 답변을 남겨두겠습니다.

Laravel PHP 백엔드에서 JWT를 인증으로 사용하고 있으며, PHP 백엔드를 사용하여?token=...예를 들어, Angular를 사용하는 경우새틀라이저 플러그인이 있는 JS, 추가했습니다.?token=' + $auth.getToken()URL로 이동합니다.

언급URL : https://stackoverflow.com/questions/24130004/adding-http-headers-to-window-location-href-in-angular-app

반응형