쿼리 문자열 및 앵커 해시 태그로 올바른 URL 형성


114

쿼리 문자열과 앵커 태그 (해시 태그)가 URL에 모두 표시 될 때 표시되는 올바른 순서는 무엇입니까?

http://www.whatever.com?var=val#anchor

또는

http://www.whatever.com#anchor?var=val

이것에 대한 문서가 있습니까?

업데이트 : URL은 Wordpress / PHP에서 처리됩니다.

답변:


148
?var=var#hash

이후의 모든 #것은 클라이언트 측입니다.

또한 URL 재 작성을 조사하여 추악한 ?var=var


26
쿼리 문자열 추한이지만 그 목적을 가지고 있으며, 더 유연
모리오

7
쿼리 문자열 사용에있어 문제점은 무엇입니까? 이유 때문에 HTTP 표준의 일부입니다
Julio Bastida

예.하지만 SPA (단일 페이지 응용 프로그램)의 경우 클라이언트 쪽 페이지 간 매개 변수에는 어떤 매개 변수가 있습니까?
Pete Alvin 19


3

URL에 앵커 태그 (#)와 쿼리 문자열 (?)이 모두있는 경우 브라우저는 쿼리 문자열을 무시하고 페이지를 다시로드하지 않고 앵커 태그로 이동할 수 있습니다.

다음을 사용하여 페이지를 제출해야 할 수도 있습니다.

    <form action='webpage.php?q=string#tag' method='GET or POST'>
    <input type='text' id='q' name='q' value='string'>
    <input type='submit' value='submit'>
    </form> 

URL 링크가 아닌

    <a href='webpage.php?q=string#tag'>.

1

사용의 의도는 경우 #나타내는 것입니다 페이지를 fragment다음 예 - ?다음 #.

경우 #이전오고 ?그것을 나타낸다 페이지에없는 fragment(때 발생할 수 있습니다 #그것을 인코딩해야하는 권한 (사용자 이름 및 암호)의 일부입니다)하거나 문제가 있습니다. 동일은 다른 특수 문자 (적용 :, @URL로 다른 의미를 줄 수있는, ...).

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.