> For the complete documentation index, see [llms.txt](https://shhn0509.gitbook.io/html-and-css/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://shhn0509.gitbook.io/html-and-css/html/form-element/get-and-post.md).

# GET과 POST의 차이점

GET과 POST는 HTTP프로토콜을 이용해서 서버에 무언가를 전달할 때 사용하는 방식이다.&#x20;

## \<GET> <a href="#get" id="get"></a>

* 기본값, 폼에 입력한 사용자의 정보가 url에 그대로 나타남
* 전송할 수 있는 정보의 길이가 제한되어 있다.
  * 브라우저마다 다르지만 기준 이상의 정보를 전송하게 된다면 데이터가 누락되는 상황이 발생한다.&#x20;
* [퍼머링크(permalink)](https://ko.wikipedia.org/wiki/%ED%8D%BC%EB%A8%B8%EB%A7%81%ED%81%AC)로 사용될 수 있다.
  * 데이터가 url에 포함되어 있기 때문에 고유한 데이터를 가질 수 있다. 즉, post 방식과 달리 고유링크가 될 수 있다.&#x20;
* 북마크 같은 용도로 사용하거나 어떤 정보를 가져올 때 정보에 대한 url로 많이 사용한다.&#x20;

{% hint style="info" %}
퍼머링크

인터넷에서 특정 페이지에 영구적으로 할당된 [URL](https://ko.wikipedia.org/wiki/URL) 주소를 뜻한다. 고유링크 고유주소라고 불리기도 한다.&#x20;
{% endhint %}

## \<POST> <a href="#post" id="post"></a>

* 폼에 입력한 사용자의 정보가 숨겨짐 (URL 상에 전달한 정보가 표시되지 않는다.)
* 민감한 정보 데이터를 전송할 때 사용 (사용자의 로그인 정보 등)
* header의 body에 담겨서 전송된다.
* GET에 비해서 보안상 약간의 우위에 있다. (사실상 동일하다)
* 전송할 수 있는 데이터의 길이 제한이 없다.
  * header의 body에 담겨서 전송되기 때문이다.&#x20;
* 퍼머링크로 사용할 수 없다.
* 서버 쪽에 어떤 작업을 명령할 때 사용한다.\
  (데이터의 기록, 삭제, 수정 등)

## 참고  <a href="#notes" id="notes"></a>

* [get과 post의 차이 ](http://blog.outsider.ne.kr/312)
