หากคุณจริงๆต้องการที่เกิดขึ้นจริง URL ดิบคุณสามารถใช้วิธีการขยายต่อไปนี้:
public static class HttpRequestExtensions
{
public static Uri GetRawUrl(this HttpRequest request)
{
var httpContext = request.HttpContext;
var requestFeature = httpContext.Features.Get<IHttpRequestFeature>();
return new Uri(requestFeature.RawTarget);
}
}
วิธีนี้ใช้การRawTarget
ร้องขอซึ่งไม่ปรากฏบนHttpRequest
วัตถุเอง คุณสมบัตินี้ถูกเพิ่มใน ASP.NET Core รุ่น 1.0.0 ตรวจสอบให้แน่ใจว่าคุณใช้งานเวอร์ชันนั้นหรือเวอร์ชันที่ใหม่กว่า
บันทึก! คุณสมบัตินี้แสดงURL ดิบดังนั้นจึงไม่ได้รับการถอดรหัสดังที่ระบุไว้ในเอกสารประกอบ:
คุณสมบัตินี้ไม่ได้ใช้ภายในสำหรับการตัดสินใจกำหนดเส้นทางหรือการอนุญาต ยังไม่ได้รับการถอดรหัส URL และควรใช้ความระมัดระวังในการใช้งาน