HTTP 프록시의 사용자 이름 / 암호에 특수 문자를 사용하는 방법은 무엇입니까? set명령이 실패 한다는 것입니다

Windows 컴퓨터에서 HTTP 프록시를 설정하려고합니다. 문제는 암호에 특수 문자 (@)가있어 set명령이 실패 한다는 것입니다 .

나는 문자 ( \@)를 이스케이프 처리하고 16 진수 값 ( %40)으로 백분율 인코딩 하여 아무 소용이 없었습니다.

예를 들어 사용자 이름 Foo와 암호 B @ r을 사용하여 다음 명령을 시도했습니다.

set http_proxy=http://foo:B\@r@http-gateway.domain.org:80
set http_proxy=http://foo:B%40r@http-gateway.domain.org:80

비밀번호 변경 이외의 방법으로 프록시가 비밀번호를 사용하도록하려면 어떻게해야합니까?



답변

당신은 퍼센트 인코딩해야 | 특수 문자를 인코딩 하십시오. 예를 들어이 대신 :

http://foo:B@r@http-gateway.domain.org:80

당신은 이것을 작성합니다 :

http://foo:B%40r@http-gateway.domain.org:80

따라서 @로 대체됩니다 %40.


답변

특수 문자에 특수 문자의 % Ascii 코드를 16 진 표기법으로 사용하십시오. 내 비밀번호가 AB @ 12 # 라고 가정 하고 비밀번호를 다음과 같이 설정해야합니다.

git config --global http.proxy *http://usernamne:**AB%4012%23%26**@myipadress:portnumber*

임의의 숫자의 16 진 ASCII 코드를 아는 경우 ASCII 표를 참조하십시오.


답변

특수 문자, 사용자 이름 또는 비밀번호의 경우 항상 UTF-8로 인코딩 된 문자열을 대신 사용할 수 있습니다. 예를 들면 :! % 21로 대체 가능

암호가 abc! 인 경우 명령은 다음과 같습니다.

npm 구성 세트 프록시 http : // user : abc%21@proxy.world.com : 8080 /

npm 구성 세트 https-proxy http : // user : abc%21@proxy.world.com : 8080 /


답변

SO에 대한이 답변을 바탕으로 @ 기호를 이스케이프 처리하기 위해 ^를 사용할 수 있습니까?


답변