Ajax POST의 레퍼러 변경
jquery 또는 general javascript를 사용하여 http ajax 호출의 헤더에서 레퍼러를 변경할 수 있는지 아는 사람?
기본적으로 나는 그것이 나의 페이지에서 보내지기를 원하지만 다른 페이지에서 레퍼러를 가지고 있습니다.어떤 정보라도 좋습니다.
브라우저는 내가 수행한 테스트에 대해 항상 레퍼러를 덮어씁니다.즉, Ajax 호출의 레퍼러를 변경할 수 없습니다.
사용할 수 있습니다..setRequestHeader( 'referer', 'foo' )
하지만 브라우저가 그것을 적절한 것으로 대체할지는 잘 모르겠습니다.
jQuery를 통해.ajax()
method는 헤더도 허용합니다..get()
그리고..post()
하지 마)
교차 도메인 AJAX를 수행할 수 없기 때문에 이 작업을 수행하는 것은 거의 의미가 없으며, 이 작업을 시도하는 것조차 일부 브라우저에서 XHR 보안 규칙을 트리거하여 요청을 완전히 중지할 수 있습니다.
언제든지 사용할 수 있습니다.
jQuery.ajaxSetup({
'beforeSend': function(xhr) {xhr.setRequestHeader("header key", "header value")}
})
그러나 물론 브라우저는 레퍼러 헤더에 대해 다른 의견을 가질 수 있습니다.이것은 테스트되어야 합니다 :)
jQuery에서는 할 수 없지만 fetch에서는 할 수 있습니다.
교차 도메인 요청에 사용할 수 있을지는 확실하지 않지만(분명히 최소한 CORS 권한이 필요할 것입니다) 이 예제와 같이 동일한 도메인 + 다른 페이지에 사용할 수 있습니다.
fetch("http://example.com",{"referrer":"http://example.com/inbox","body":"{\"format\":\"root\"}","method":"POST"});
언급URL : https://stackoverflow.com/questions/8231366/changing-the-referrer-of-an-ajax-post
'programing' 카테고리의 다른 글
Spring-boot JWT 로그아웃 (0) | 2023.08.18 |
---|---|
Java 가져오기가 작동하지 않음 - Ubuntu Eclipse OpenJDK (0) | 2023.08.18 |
현재 지점이 아닌 지점에 대한 로그를 인쇄하려면 어떻게 해야 합니까? (0) | 2023.08.18 |
도커 컨테이너에 인터넷이 없습니다. (0) | 2023.08.18 |
Twitter Bootstrap CSS 클래스에 대한 jQuery show()가 숨겨짐 (0) | 2023.08.18 |