Get raw URL from Microsoft.AspNet.Http.HttpRequest

后端 未结 8 759
醉酒成梦
醉酒成梦 2020-12-02 21:40

The HttpRequest class in Asp.Net 5 (vNext) contains (amongst other things) parsed details about the URL for the request, such as Scheme, Host

8条回答
  •  一整个雨季
    2020-12-02 22:15

    The following extension method reproduces the logic from the pre-beta5 UriHelper:

    public static string RawUrl(this HttpRequest request) {
        if (string.IsNullOrEmpty(request.Scheme)) {
            throw new InvalidOperationException("Missing Scheme");
        }
        if (!request.Host.HasValue) {
            throw new InvalidOperationException("Missing Host");
        }
        string path = (request.PathBase.HasValue || request.Path.HasValue) ? (request.PathBase + request.Path).ToString() : "/";
        return request.Scheme + "://" + request.Host + path + request.QueryString;
    }
    

提交回复
热议问题