ASP.NET Core의 전체 공개 URL을 얻는 방법
Request
인스턴스에 대한 액세스를 제공하는 HttpRequest
속성이 있습니다. HttpRequest
개체는 들어오는 HTTP 요청의 구성표, 호스트(도메인 및 포트), 경로, 쿼리 문자열, 본문 콘텐츠 및 헤더에 대한 액세스를 제공합니다.웹 애플리케이션의 전체 URL이 무엇인지 알아야 하는 경우
Scheme
, Host
, PathBase
, Path
및 QueryString
를 가져와서 다음과 같이 결합하여 URL을 함께 입력할 수 있습니다.$"{Request.Scheme}://{Request.Host}{Request.PathBase}{Request.Path}{Request.QueryString}"
경로와 쿼리 문자열이 없는 URL에만 관심이 있을 수 있습니다. 이 경우 문자열 보간에서
PathBase
, Path
및 QueryString
매개 변수를 생략할 수 있습니다.$"{Request.Scheme}://{Request.Host}"
애플리케이션에 대한 URL을 생성하려면 절대 URL 생성에 대한 이 블로그 게시물에 설명된 대로
UrlHelper
를 사용하는 것이 좋습니다.Minimal API를 사용하는 경우 액세스할 수 있는
Request
속성이 없지만 다음과 같이 끝점 콜백에 대한 매개 변수로 HttpRequest
의 인스턴스를 수락할 수 있습니다.app.MapGet("/hello-world", (HttpRequest request) =>
{
return $"{request.Scheme}://{request.Host}{request.PathBase}{request.Path}{request.QueryString}";
}
);
HTTP 요청이 없으면 어떻게 됩니까?
BackgroundWorker
를 사용하여 일부 백그라운드 처리를 수행하는 경우와 같이 코드에서 처리하는 HTTP 요청이 없는 경우 체계를 가져와 다른 방식으로 호스팅해야 합니다. 원하는 체계와 호스트를 구성에 저장하거나 단일 속성에 결합하여 구성에 저장할 수 있습니다. 일단 구성되면 구성에서 추출하여 절대 URL을 구축하는 데 사용하십시오.네트워크 및 인프라 구성에 따라 여러 URL에서 웹 애플리케이션을 요청할 수 있다는 사실에 유의하십시오. 따라서 전체 공개 URL을 구성에 간단히 저장할 수 있지만 사용자가 사용하는 유일한 URL은 아닐 수 있습니다.
Reference
이 문제에 관하여(ASP.NET Core의 전체 공개 URL을 얻는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/swimburger/how-to-get-the-full-public-url-of-aspnet-core-8f3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)