加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 在ASP.NET MVC中从相同的路由URL路径提供图像

发布时间:2020-12-15 20:28:10 所属栏目:asp.Net 来源:网络整理
导读:这就是我想做的事情.我有一些内容,我写的是一个观点.此内容具有与文档相关的图像引用.例如,如果我正在查看以下网址: http://localhost/article/8AB98/ 内容可能具有以下形式的图像: img src="myimage.png" / 这显然会导致浏览器在以下URL查询图像: http:/
这就是我想做的事情.我有一些内容,我写的是一个观点.此内容具有与文档相关的图像引用.例如,如果我正在查看以下网址:
http://localhost/article/8AB98/

内容可能具有以下形式的图像:

<img src="myimage.png" />

这显然会导致浏览器在以下URL查询图像:

http://localhost/article/8AB98/myimage.png

但是,由于mvc路由,将无法找到此图像.您是否知道一种简单的方法可以使该URL将正确的图像返回给浏览器?

请注意:实际上重要的是标记保持原始状态不变…这意味着以某种方式重写图像网址,以便它们指向当前视图URL之外的另一个文件夹,遗憾的是不可能.

谢谢!!

解决方法

我假设当你说“实际上重要的是标记与原始标记保持不变”时,你的意思是
<img src="myimage.png" />

是什么必须呈现给浏览器,所以你需要欺骗Web服务器采取的请求URL

http://localhost/article/8AB98/myimage.png

并仅使用该信息查找正确的图像,无论您将其存储在何处,并将其返回到浏览器.

我想到了两个选项,但很难知道要推荐哪个,因为你还没有说出存储图像的位置.

选项1 – Url重写器

购买ISAPI_Rewrite的副本,并重写所有符合上述条件的网址,以便在任何地方获取图像.有关ISAPI_Rewrite here的更多信息.

选项2 – 自定义HttpHandler

您可以编写映射到解析请求URL的所有PNG文件请求的HttpHandler,并执行查找映像所需的操作,然后将其返回到响应流.这样做的缺点是你必须告诉IIS将所有PNG请求映射到aspnet_isapi.dll,这可能是一个性能无赖.

我仍然不确定我是否正确理解你的问题,但我希望这会有所帮助.祝好运.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读