$http가 요청으로 쿠키를 보내지 않음
Angular를 사용한 RESTful Web Service를 준비하고 있습니다.JS 및 Java Servlets.사용자가 로그인하면 백엔드는 "Set-Cookie" 헤더를 프런트엔드로 전송합니다.Angular에서는 헤더를 통해 액세스합니다.$cookies(ngCookie - module) 및 설정. 
사용자가 로그인하면 예를 들어 일부 항목을 삭제할 수 있습니다.따라서 프론트엔드는 백엔드로 GET 요구를 전송합니다.서로 다른 도메인에서 작업하기 때문에 몇 가지 CORS 헤더를 설정해야 하며 실제 GET 요구 전에 Angular가 OPTIONS 요구를 수행합니다.
OPTIONS 요청: 
GET 요구 
우리는 이것을 $http 모듈을 통해 Angular에서 수행하지만, 그것은 cookie를 전송하지 않습니다.JSESSIONID.
Angular가 쿠키를 보낼 수 있도록 하려면 어떻게 해야 합니까?
설정에서는, DI$httpProvider다음으로 credentials를 true로 설정합니다.
.config(function ($httpProvider) {
$httpProvider.defaults.withCredentials = true;
//rest of route code
})
credentials를 사용한angularjs에 대한 정보:http://docs.angularjs.org/api/ng.$http
Mozilla 기사 링크:https://developer.mozilla.org/en-US/docs/HTTP/Access_control_CORS?redirectlocale=en-US&redirectslug=HTTP_access_control#section_5
$http.get("URL", { withCredentials: true })
.success(function(data, status, headers, config) {})
.error(function(data, status, headers, config) {});
또 하나 유의해야 할 사항은 다음과 같습니다.서드파티 쿠키를 활성화해야 합니다.Chrome에서 전역으로 비활성화된 경우 도메인 이름 왼쪽에 있는 "i" 기호를 클릭한 다음 쿠키를 클릭한 다음 "차단"하고 대상 도메인을 차단 해제합니다.
언급URL : https://stackoverflow.com/questions/17064791/http-doesnt-send-cookie-in-requests
'programing' 카테고리의 다른 글
| sqlplus에서 "PL/SQL procedure successfully completed" 메시지를 표시하지 않으려면 어떻게 해야 합니까? (0) | 2023.03.21 |
|---|---|
| 각도 지연 방법JS 인스턴트 검색? (0) | 2023.03.21 |
| Spring Security anonymous 403 대신 401 (0) | 2023.03.16 |
| Jquery - Uncarched TypeError: 'in' 연산자를 사용하여 다음 위치에서 '324'를 검색할 수 없습니다. (0) | 2023.03.16 |
| 중첩된 JSON: 개체에 새 항목을 추가하는 방법(푸시) (0) | 2023.03.16 |