0

我正在开发一个 ASP.NET MVC 项目。我有一个具有静态 base64 图像的动作。

我希望此操作仅在从其他位置调用时才呈现正确的图像myproject/allowedController/allowedAction显示不同的图像。

我还想限制是否有人在我的网站上登录并直接打开图像 url,但推荐人总是返回为空。

我试过这段代码:

string host = Request.ServerVariables["HTTP_REFERER"].ToString().Replace("http://", "").Replace("https://", "").ToLower();   
//string host = Request.UrlReferrer.Host.ToString().Replace("http://", "").Replace("https://", "").ToLower();

 string localPath = Request.UrlReferrer.LocalPath.ToString().ToLower();

 if (host != "www.mydomain.com")
 {
       throw new Exception("unauthorized request code 1");
 }

 if (!(localPath.StartsWith("/allowedController/allowedAction")))
 {
        throw new Exception("unauthorized request code2");
 }

主机总是抛出错误

你调用的对象是空的

4

0 回答 0