작성자 없음
작성자 정보가 삭제된 글입니다.
작성
·
403
·
수정됨
0
안녕하세요 강의를 듣다 의문점이 생겨서 질문남깁니다!
서블릿 정리 4분40초 부터
Form 데이터를 body로 전송에는 POST방식만 사용하고, PUT이나 PATCH는 HTTP 스펙상 불가능하고 POST방식만 가능하다고 하셨는데
HTTP 규약은 GET과 POST를 포함하여 모든 HTTP 메서드를 유연하게 사용할 수 있도록 설계되어 있어서 클라이언트에서 Form데이터를 PUT메서드로 요청 하고 받는것 또한 가능합니다.
from flask import Flask, request
app = Flask(__name__)
@app.route('/submit', methods=['PUT'])
def submit():
name = request.form['name']
email = request.form['email']
message = request.form['message']
print(name,email,message)
return 'Form submitted successfully'
if name == '__main__':
app.run(debug=True)
실제로 위와같이 정상적으로 서버에서 처리도 가능하구요
Rest api나 관례상 form데이터를 전송할때 post 메서드를 사용한다가 정확한 표현 아닐까요?
강의를 보고 혼란이 와서 질문남깁니다. 읽어주셔서 감사합니다.
간단하게 예시를 들기위해 flask사용하였습니다.
답변 1
0
안녕하세요, 송재백 님! 공식 서포터즈 codesweaver 입니다.
'순수 HTML' Form 태그에서 지원하는 HTTP 메서드는 Get, Post 두 가지라고 이해하시면 됩니다.
그러나 자바스크립트 등을 이용하여 HTTP 메서드를 Put, Patch, Delete 등으로 변경하여 전송할 수 있습니다.
말씀하신 것 처럼 RestAPI 를 만들 때 Put, Patch, Delete 를 구분하기 보단 Get, Post 로 처리하는 경우가 많긴 합니다.
감사합니다.
라는 부분에 오류가 있는게 맞나요?
위와 같이 자바스크립트없이 PUT 요청을 보낼수있지않나요?