@사용자의 일부로 기호 를 사용하는 것이 안전 합니까? 예를 들어 가능한 URL은입니다 http://example.com/@dave.
요즘에는 사용자를 일반적으로 "@user"라고 부르는데 사용자 페이지를 "@username"으로 만들지 않겠습니까?
@사용자의 일부로 기호 를 사용하는 것이 안전 합니까? 예를 들어 가능한 URL은입니다 http://example.com/@dave.
요즘에는 사용자를 일반적으로 "@user"라고 부르는데 사용자 페이지를 "@username"으로 만들지 않겠습니까?
답변:
당신은 사용할 수 있습니다 @당신이 경우 HTTP URI 경로에 문자를 퍼센트 인코딩 으로 %40.
많은 브라우저에서 여전히으로 표시 @하지만 예를 들어 URI를 텍스트 문서에 복사하여 붙여 넣으면 %40.
백분율 인코딩 대신 @HTTP URI 경로에서 직접 사용할 수 있습니다 .
URI 의 경로 는 구문을 참조하십시오 . 다양한 무관 절 제쳐두고 경로는 문자로 구성 될 수있다 segment, segment-nz또는 segment-nz-nc세트. segment그리고 segment-nz 로부터 문자로 구성 pchar으로 정의 세트 :
pchar = unreserved / pct-encoded / sub-delims / ":" / "@"
보시 @다시피이 명시 적으로 나열됩니다.
이 segment-nz-nc세트는 또한 @문자를 명시 적으로 나열합니다 .
segment-nz-nc = 1*( unreserved / pct-encoded / sub-delims / "@" )
따라서 다음과 같은 HTTP URI는 완전히 유효합니다.
http://example.com/@dave
다음은 Wikipedia 페이지의 예입니다.
http://en.wikipedia.org/wiki/%22@%22_%28album%29당신이 볼 수 있듯이, ", (, 및 )문자는 퍼센트 인코딩,하지만 @과는 _직접적으로 사용된다.
@URL에서 더 이상 사용하지 않는 것으로 보이지만 이전 (?) 프로필 URL은 여전히 작동합니다. 퍼센트 인코딩 된 @(작동하지 않음 !) 예제@ 와 직접 사용 (작동 함) 일!) .
@아닌 자유석 . 소비자는 가정하지 않아야 그래서 %40와 @동일합니다.
Many browsers would display it still as @, but e.g. when you copy-and-paste the URI into a text document, it will be %40.Chrome에서는 그렇지 않습니다.
URL에 @-기호를 사용할 수 있습니까? - 예, 할 수 있습니다!
@ 문자, 16 진수 값 40, 10 진수 값 64는 URI 용으로 예약 된 문자입니다. mailto:예를 들어 URI의 이메일 주소와 같은 용도로 사용됩니다.mailto:username@somewhere.foo 사용자 이름 및 비밀번호 정보를 전달하는 데 사용됩니다 (나쁜 생각이지만 가능합니다).http://username:password@somewhere.foo
경로에 @-기호가있는 URL을 원하는 경우 ""로 인코딩해야합니다. URL 인코딩 " 으로 인코딩해야 합니다. 예를 들면 다음과 같습니다.http://somewhere.foo/profile/username%40somewhere.foo
모든 최신 브라우저는 이것을 다음과 같이 표시합니다. http://somewhere.foo/profile/username@somewhere.foo 하고 @ -sign에 입력 한 모든 것을 다음으로 변환합니다.%40 하므로 사용하기 쉽습니다.
많은 웹 프레임 워크는 또한 자동으로 또는 도우미 기능을 사용하여 URL 인코딩 된 URL로 또는 URL로 변환하는 데 도움을줍니다.
요약하자면 : 예, URL에 @ -symbol 을 사용할 수 있지만 @ -character를 사용할 수 없으므로 인코딩되었는지 확인해야합니다 .
@문자는 URL의 경로 부분에 인코딩 할 필요가 없습니다 ( greenbytes.de/tech/webdav/rfc3986.html#path )
기본적으로 아니.
@ 예약 된 문자이며 의도 된 용도로만 사용해야합니다.
참조 : http://perishablepress.com/stop-using-unsafe-characters-in-urls/ 및 http://www.ietf.org/rfc/rfc3986.txt
인코딩으로 사용할 수 있지만 그게 당신이 요청한 것이라고 생각하지 않습니다.
분명히 최신 브라우저가이를 처리 할 것입니다. 그러나 이것이 안전한지 물었고 RFC 의 사양에 따라 의도 된 목적을위한 것이 아니라면 사용해서는 안됩니다 (인코딩되지 않음).