sourcecode

AJAX에서 GET vs POST?

codebag 2023. 8. 1. 20:31
반응형

AJAX에서 GET vs POST?

어쨌든 페이지 URL에는 영향을 주지 않는데 AJAX에 GET 및 POST 요청이 있는 이유는 무엇입니까?데이터가 페이지 URL에 반영되지 않기 때문에 AJAX의 GET를 통해 중요한 데이터를 전달하면 어떤 차이가 있습니까?

웹 서비스에서 요구하는 내용에 따라 적절한 HTTP 동사를 사용해야 합니다.


다음과 같은 Collection URI를 처리하는 경우:

GET: 컬렉션의 멤버를 나열하고, 추가 탐색을 위해 멤버 URI를 작성합니다.예를 들어, 판매 중인 모든 차량을 나열합니다.

PUT: "전체 컬렉션을 다른 컬렉션으로 바꾸기"로 정의된 의미입니다.

POST: 컬렉션에 의해 ID가 자동으로 할당되는 새 항목을 만듭니다.생성된 ID는 일반적으로 이 작업에서 반환되는 데이터의 일부로 포함됩니다.

DELETE: "전체 컬렉션 삭제"로 정의된 의미입니다.


다음과 같은 구성원 URI를 처리할 때:

GET: 적절한 MIME 유형으로 표현된 컬렉션의 주소 지정된 멤버 표현을 검색합니다.

PUT: 컬렉션의 주소 지정된 멤버를 업데이트하거나 지정된 ID로 만듭니다.

POST: 주소가 지정된 구성원을 자체적으로 컬렉션으로 처리하고 해당 구성원의 새 하위 항목을 만듭니다.

삭제: 컬렉션의 주소가 지정된 멤버를 삭제합니다.


출처: 위키백과

GET의 경우 URL 길이 제한이 있습니다.이 외에도 서버가 POST 요청과 GET 요청을 다르게 처리할 수 있기 때문에 수행 중인 요청을 지정할 수 있어야 합니다.

차점이다른의 또 다른 .GET그리고.POST브라우저에서 캐싱이 처리되는 방식입니다.POST응답이 캐시되지 않습니다.GET응답 헤더에 지정된 캐싱 규칙에 따라 캐시될 수도 있고 캐시되지 않을 수도 있습니다.

두 가지 주요 이유:

  1. GET요청에는 크기에 대한 상당히 제한적인 제한이 있습니다.POST일반적으로 훨씬 더 많은 정보를 포함할 수 있습니다.

  2. 백엔드가 다음을 예상할 수 있습니다.GET또는POST설계 방식에 따라 다릅니다.우리는 유연성이 필요합니다.GET가 예상하는 "" "" "" "" " " ""POST그것이 그것이 기대하는 것이라면.

간단히 말해서 http 프로토콜의 규칙을 존중하는 것입니다.

가져오기 - 호출은 동일해야 합니다.이것은 여러분이 그것을 여러 번 불러도 같은 결과를 얻을 것이라는 것을 의미합니다.기본 데이터를 변경하기 위한 것이 아닙니다.검색 상자 등에 사용할 수 있습니다.

사후 통화는 동일하지 않습니다.기본 데이터를 변경할 수 있으므로 생성 방법에 사용할 수 있습니다.여러 번 호출하면 여러 개의 항목이 만들어집니다.

일반적으로 매개 변수를 AJAX 스크립트로 보내면 해당 매개 변수를 기반으로 데이터가 반환됩니다.method="get" 또는 method="post"가 있는 양식과 동일하게 작동합니다.GET 메서드를 사용할 때는 쿼리 문자열에 매개 변수가 전달됩니다.POST 방법을 사용하는 경우 파라미터가 POST 본문으로 전송됩니다.

일반적으로 매개 변수에 문자가 거의 없고 중요한 정보가 포함되어 있지 않으면 GET 메서드를 통해 전송합니다.중요한 데이터(예: 암호) 또는 긴 텍스트(예: 사람의 8000자 길이 바이오)는 POST 방법을 통해 더 잘 전송됩니다.

감사합니다.저는 주로 GET 메소드를 Ajax와 함께 사용하고 있으며 현재까지 다음을 제외하고는 아무런 문제가 없습니다.

Firefox 및 Google Chrome과는 달리 Internet Explorer는 동일한 GET 값을 사용하는 경우 GET 호출을 캐시합니다.

따라서 각 Ajax GET에 대해 관련 없는 난수 사용으로 URL을 변경하지 않는 한 Ajax GET과 일부 간격을 사용하면 동일한 결과를 표시할 수 있습니다.

다른 것들은 주요 포인트(컨텍스트/아이덴티티 및 크기)를 다루었지만, 저는 암호화라는 또 다른 것을 추가하겠습니다.SSL을 사용하는 경우 입력 인수를 암호화하려면 POST를 사용해야 합니다.

Ajax에서 GET 메서드를 사용하면 필드 값의 내용만 전송되고 내용이 있는 형식은 전송되지 않습니다.예를 들어, 텍스트 영역의 내용은 GET 메서드의 경우 URL에 추가됩니다(새 줄 문자 없음).POST 방법에서는 그렇지 않습니다.

언급URL : https://stackoverflow.com/questions/1872965/get-vs-post-in-ajax

반응형