是否可以检查是否从IMG标签发出请求?
我在http://example/image.png
是否可以检查是否从IMG标签发出请求?
一个ActionResult有没有一种方法,以确定是否从
<img src="http://example/image.png" />
被请求的URL或者从
<a href="http://example/image.png" target="_blank" />
被打开?
所以我可以控制,结果......
public ActionResult ViewPhoto()
{
if (<img src />)
{
return File();
}
else
{
return View();
}
}
没有就没有办法在知道问题的格式。如果您拥有该链接来自的网站,我建议您在查询字符串上附加一些内容以帮助您处理服务器端。
如果这是一个网页,我认为,你可以尝试用Request.UrlReferrer
,或ServerVariables["HTTP_REFERER"]
根据您的需要。前者返回一个URI对象,后者返回字符串。
但这前提是你已经去了的ActionResult ViewPhoto()方法
oic,错过了那个,在那种情况下,你如何处理你的图像?处理网络,我相信你理解查询字符串。例如,在'image.png&location = blank'中。所以在你的viewPhoto方法中,你得到查询字符串的位置。尝试是否有帮助 – 2011-04-19 02:33:54
你可以把一个GET PARAM图像上,像
<img src="http://example/image.png?x=view" />
和
<a href="http://example/image.png?x=file" target="_blank" />
请问
为你工作?
我不会控制代码。用户可以更改/删除参数。 – BrunoLM 2011-04-19 10:46:29
您可以检查Request.Headers["Accept"]
是否包含字符串"html"
。
如果你想要一个不同的结果,那么也许你应该使用不同的图像?否则会产生不可维护的代码(谁,在几年后查看你的代码,会有任何想法,你做了这么奇怪的事情)? – 2011-04-19 02:20:34