有人可以告诉你如何创建这种网址
例如,如果您看到网址
http://office.microsoft.com/global/images/default.aspx?assetid=ZA103873861033
您将重定向到图片..
我的问题是,虽然这个url是一个图像..扩展名是aspx ..它是否可能。 如何创建这种网址
由于
答案 0 :(得分:4)
通过在服务器的响应中设置ContentType
HttpContext.Response.ContentType = "image/jpeg";
答案 1 :(得分:4)
这是显示在数据库中存储为二进制对象的图像的常用方法。其中一个教程可以找到here。
基本上,他们正在做的是使用aspx
页面接受URL参数,该参数告诉他们从数据库中获取什么图像。然后在响应中清除所有输出和标题,设置图像的标题,将二进制数据写入响应流,并关闭响应流。
所以它并没有真正“重定向”你的形象。被请求的“页面”原来是响应中的图像资源。
答案 2 :(得分:0)
最简单的方法是添加通用处理程序* .ashx,在ashx文件中你将拥有代码,你可以获取查询字符串并操纵响应,例如。 Response.WriteFile(...)
答案 3 :(得分:0)
文件扩展名在WWW上没有任何意义。正确描述特定URL上的内容的是内容类型/ MIME-type。当在传递主HTTP有效负载之前请求URL时,这将在HTTP header中提供。其他答案描述了如何在ASP.NET中正确设置它。
答案 4 :(得分:0)
除了所有其他答案之外,他们可能正在对图像文件执行Server.Transfer()
(以便您不会将其视为客户端)。这仍然意味着响应标头被设置为适当的MIME类型,但它也意味着图像不是来自数据库。此技术可用于隐藏实际图像URL以防止热链接。