양식 POST에서 헤더 필드를 설정하는 방법은 무엇입니까?
양식 제출시 POST 헤더에 사용자 정의 필드를 설정하려면 어떻게해야합니까?
할 수 없습니다-AFAIK.
그러나 예를 들어 jquery (일반 자바 스크립트로 할 수 있지만)를 사용하여 양식을 직렬화하고 사용자 정의 헤더를 추가하는 동안 (AJAX 사용) 보낼 수 있습니다.
serialize
HTML FORM form-url-encoded
을 POST 준비가 된 값 으로 변경하는 jquery 를 살펴보십시오 .
최신 정보
내 제안은 다음 중 하나를 포함하는 것입니다.
- 숨겨진 양식 요소
- 쿼리 문자열 매개 변수
페이지에 쿠키 값을 설정 한 다음 서버 측에서 다시 읽습니다.
특정 헤더를 설정할 수 없지만 콘텐츠 본문이 아닌 헤더 섹션에서 값에 액세스 할 수 있습니다.
에서 FormData documention :
XMLHttpRequest Level 2는 새로운 FormData 인터페이스에 대한 지원을 추가합니다. FormData 개체는 양식 필드와 해당 값을 나타내는 키 / 값 쌍 집합을 쉽게 구성 할 수있는 방법을 제공합니다. 그런 다음
XMLHttpRequest
send()
메서드를 사용하여 쉽게 보낼 수 있습니다 .
를 사용 XMLHttpRequest
하여 사용자 지정 헤더를 설정 한 다음 POST
.
사실 클라이언트 측에 쿠키를 저장하는 더 좋은 방법입니다. 그런 다음 해당 특정 도메인의 모든 페이지 헤더와 함께 쿠키가 자동으로 전송됩니다.
node-js에서는 cookie-parser를 사용하여 쿠키를 설정하고 사용할 수 있습니다 .
예 :
res.cookie('token', "xyz....", { httpOnly: true });
이제이 항목에 액세스 할 수 있습니다.
app.get('/',function(req, res){
var token = req.cookies.token
});
참고 httpOnly:true
쿠키는 일반적으로 액세스 할 수 없습니다 수동 또는 자바 스크립트를 통해 액세스 할 수 있습니다 만 브라우저되도록합니다. ajax를 통하지 않고 양식 게시물로 일부 헤더 또는 보안 토큰을 보내려는 경우 대부분의 경우 이것은 안전한 방법으로 간주 될 수 있습니다. 일반적으로 중요한 사용자 관련 정보를 저장하는 경우 데이터가 보안 프로토콜 / ssl을 통해 전송되는지 확인하십시오.
내가 펍 / 제이드에서 한 일입니다.
extends layout
block content
script(src="/jquery/dist/jquery.js")
script.
function doThePost() {
var jqXHR = $.ajax({
type:'post'
, url:<blabla>
, headers: {
'x-custom1': 'blabla'
, 'x-custom2': 'blabla'
, 'content-type': 'application/json'
}
, data: {
'id': 123456, blabla
}
})
.done(function(data, status, req) { console.log("done", data, status, req); })
.fail(function(req, status, err) { console.log("fail", req, status, err); });
}
h1= title
button(onclick='doThePost()') Click
$ .ajax를 사용하여 <form method="POST">
. 예를 들어 제출 버튼에 이벤트를 추가하고 POST 요청을 AJAX로 처리 할 수 있습니다.
참고 URL : https://stackoverflow.com/questions/9516865/how-to-set-a-header-field-on-post-a-form
'IT박스' 카테고리의 다른 글
Objective-C에서 ivar와 속성의 차이점은 무엇입니까? (0) | 2020.10.06 |
---|---|
C ++ 0x에서 변환 범위를 좁 힙니다. (0) | 2020.10.06 |
장고 신호 vs. 저장 방법 재정의 (0) | 2020.10.06 |
민화와 람다는 왜 이렇게 다른가요? (0) | 2020.10.05 |
Ruby on Rails에서 컨트롤러 간 코드 재사용을위한 모범 사례 (0) | 2020.10.05 |