728x90
쿼리 스트링(Query String)이란?
쿼리 스트링은 웹 페이지의 URL에서 정보를 전달하기 위해 사용하는 일종의 '문자열'이다.
쉽게 말해, 웹 주소(URL)의 일부로, 웹 서버에 전달할 추가적인 데이터를 포함하는 방법이다.
URL의 끝에 붙여서 파라미터와 값을 전달할 때 사용한다.
쿼리 스트링의 구성 요소
http://example.com/page?key1=value1&key2=value2
여기서 ?는 쿼리 스트링의 시작을 나타내고, &는 여러 파라미터를 구분하는 데 사용된다.
- 기본 URL
쿼리 스트링이 붙기 전의 URL 부분. 예) https://example.com/page - 물음표(?)
쿼리 스트링의 시작을 나타낸다. - 파라미터
데이터의 키-값 쌍이다. 예) parameter1=value1과 같은 형식 - 앤퍼샌드(&)
여러 파라미터를 구분하는 기호다. 예) parameter1=value1¶meter2=value2
예시)
예를 들어 ' https://www.example.com/products?category=electronics&sort=price '이라는 주소가 있다.
해당 주소는 웹사이트에서 특정한 제품 목록을 조회하는 요청을 나타낸다.
- 'https://www.example.com/products'는 웹사이트의 기본 페이지 주소이고,
여기서는 "products"라는 제품 목록 페이지를 가리키고 있다. - '?'는 쿼리 스트링의 시작을 나타낸다.
- category=electronics는 "category"라는 키에 "electronics"라는 값을 가진 쿼리 스트링이다.
이 부분은 제품 목록에서 "전자제품" 카테고리에 속하는 제품만 보여달라는 의미이다. - &는 여러 쿼리 스트링을 구분하는 역할을 한다.
- sort=price는 "sort"라는 키에 "price"라는 값을 가진 쿼리 스트링이다.
이 부분은 제품 목록을 가격순으로 정렬해 달라는 의미이다.
쿼리 스트링 사용 시 주의사항
- URL 인코딩: 쿼리 스트링에 공백이나 특수 문자가 포함되면 URL 인코딩을 해야 한다.
예를 들어, 공백은 %20으로 변환된다. - 보안: 쿼리 스트링에 민감한 정보를 넣는 것은 보안 위험이 있을 수 있다.
비밀번호 같은 중요한 정보는 쿼리 스트링 대신 POST 요청 등 다른 방법으로 전달하는 것이 좋다. - 길이 제한: 일부 웹 서버나 브라우저는 URL의 길이에 제한이 있을 수 있다.
너무 긴 쿼리 스트링은 문제가 될 수 있으니 주의해야 한다.
728x90
'기초 지식' 카테고리의 다른 글
인증(인증, Authentication)과 인가(권한 부여, Authorization) (0) | 2024.08.07 |
---|---|
npm, package.json, node_modules 는 무엇일까? (0) | 2024.08.01 |
HTTP 상태 코드 정리 (0) | 2024.07.31 |
HTTP란? / HTTP와 HTTPS (0) | 2024.07.31 |
Web API란? (엔드포인트, 메서드: GET, POST, PUT, DELETE, 헤더, 바디) (0) | 2024.07.31 |