c#如何确定请求是否来自一个资产url,如图像或css

本文关键字:一个 url 图像 css 是否 请求 何确定 | 更新日期: 2023-09-27 18:18:32

我想这样做:

if(Request == "mainPath")
{
//code here
}

因此,例如,如果请求来自http://www.mydomain.com/tax/tax1,它将返回true,但如果请求来自http://www.mydomian.com/tax/tax1/image5.jpg或template.css,它将不会。最好的方法是什么?我想我可以比较浏览器中的url与请求的完整路径,但我不确定这是否是最好的主意。此外,如果它对问题有任何值,则代码存在于Global.asax.cs - MVC3项目中的Application_BeginRequest()中。

非常感谢!

c#如何确定请求是否来自一个资产url,如图像或css

这听起来像是你在问如何检查所请求的URL的扩展名。
检查Path.GetExtension(Request.Url.LocalPath)

您可能还想检查File.Exists(Server.MapPath(Request.AppRelativeCurrentExecutionFilePath))

您可以查看请求的ContentType。对于像image这样的资源,您将获得image/jpeg。您可以确定即将到来的请求类型。

正确的Content-Type值应该是

text/css ->

image/gif -> for .gif文件

image/jpeg -> .jpg/.jpeg文件