2022. 3. 17. 18:46ㆍBACK END/NODE.JS
1. Ajax 로 처리
$.ajax({
type: 'PUT',
headers: {
"X-HTTP-Method-Override": "PUT" },
});
type이나 headers에 메서드를 설정할 수 있음.
간혹 환경에 따라 GET, POST, PUT, DELETE 전부를 이용하지 못할수도 있음.
예를 들면 WAS가 메소드를 모두 지원해도 방화벽에서 GET과 POST만 받아들이면 PUT과 DELETE는 이용할 수 없기 때문에 헤더를 통해 메소드를 별도로 설정해주면 저걸 key 값으로 해서 작업을 할 수 있다고 함.....
ajax예시
$.ajax({
type: 'PUT',
url: url
data: data
headers: {
"Content-Type": "application/json",
"X-HTTP-Method-Override": "PUT"
},
success: function(res){
console.log('success!');
console.log(res);
},
error: function(err){
console.log('Error!');
}
});
2. Method-override<form> 태그로 처리
method-override 패키지 설치
npm i method-override --save
app.js
var methodOverride = require('method-override')
// Method-Override
app.use(methodOverride('_method'));
submit action 수정
<input value="이름" onclick="javascript: action='[주소]/?_method=[메소드]';" type="submit" />
action 뒤에 '?_method='를 추가하고 사용할 메소드를 적어줌
클라이언트 예시
<form method="POST">
아이디 <input type="text" name="id" style="width:130px" placeholder="아이디"> <br />
비밀번호 <input type="text" name="pw" style="width:130px" placeholder="비밀번호">
<input value="로그인" onclick="javascript: action='/login/select/?_method=PUT';" type="submit" /> <br />
</form><br />
서버 라우트
router.[메소드]('/', function (req, res) { -- }
서버 라우트 예시
router.delete('/', function (req, res) {
console.log("DELETE ROUTER~~~~~~~~~~")
});
참고
[REST] PUT, PATCH, DELETE 미지원 처리
브라우저에 따라 PUT, PATCH, DELETE 방식을 지원하지 않는 경우가 있을 수 있다. 이를 해결하기 위해 대부분 브라우저에서는 일단 POST 방식으로 전송하고, 추가적인 정보를 통해 PUT, PATCH, DELETE 방식
velog.io
[NodeJS] PUT, DELETE, method-override
RESTful API의 7가지 패턴 중 변경된 정보를 업데이트하는 PUT method와 데이터를 삭제하는 DE...
blog.naver.com
OKKY | ajax 속성에서 질문이요
headers: { Content-Type : application/json , X-HTTP-Method-Override : POST }, 1. headers 라는게 속성이 맞나요? 2. 그안에 json이라는 타입을주는건알겠는데 그밑에 post는 먼가요? 3. type에 post를 지
okky.kr
'BACK END > NODE.JS' 카테고리의 다른 글
replace함수로 string타입 데이터 가공 (0) | 2022.03.17 |
---|---|
cross-env (0) | 2022.03.17 |
Bcrypt 암호화 (0) | 2022.03.17 |
Express 에서 Mongo DB 활용 로그 기록 기능 구현 (0) | 2022.03.17 |
Express-generator를 이용한 express 기본 구조 생성 (0) | 2022.03.17 |