Node.js의 auth 속성은 URL에서 사용자 인증 정보에 해당하는 부분, 즉 userInfo(사용자 이름과 비밀번호)를 나타냅니다. 사용자 이름과 비밀번호는 콜론(:)으로 구분되며, 이 속성을 활용하면 URL 문자열에서 인증 관련 정보를 손쉽게 추출할 수 있습니다.
문법(Syntax)
urlObject.auth
매개변수(Parameters)
auth 속성은 URL에서 사용자 이름과 비밀번호만 반환하는 역할을 하기 때문에, 별도의 입력 매개변수가 필요하지 않습니다.
예제 1
먼저 auth.js라는 이름의 파일을 생성하고 아래 코드를 복사해 붙여넣습니다. 파일 생성 후에는 다음 명령어로 코드를 실행할 수 있습니다.
node auth.js
auth.js
// URL 모듈 불러오기
const url = require('url');
var adr = 'https://username=hello:password=tutorialspoint@www.tutorialspoint.com/';
// 위 URL 주소 파싱
var q = url.parse(adr, true);
// auth 정보 출력
console.log(q.auth);실행 결과
C:\home\node>> node auth.js username=hello:password=tutorialspoint
예제 2
이번에는 다른 예제를 통해 auth 속성의 동작 방식을 더 자세히 살펴보겠습니다.
// URL 모듈 불러오기
const url = require('url');
var adr = 'https://username=admin:password=tutorialspoint123@www.tutorialspoint.com/';
// 위 URL 주소 파싱
var q = url.parse(adr, true);
// auth 정보 출력
console.log(q.auth);실행 결과
C:\home\node>> node auth.js username=admin:password=tutorialspoint123
정리
이처럼 Node.js의 legacy URL API인 url.parse() 메서드를 사용하면, 파싱된 URL 객체의 auth 속성을 통해 호스트 앞에 위치한 사용자 인증 정보(사용자 이름:비밀번호)를 간편하게 확인할 수 있습니다. 단, 최신 Node.js 버전에서는 WHATWG URL 표준 API인 new URL() 사용이 권장되며, 해당 방식에서는 username과 password 속성을 각각 따로 조회하는 점도 함께 참고하시기 바랍니다.