是否可以加载没有图像名称的图像?

时间:2014-02-13 14:35:21

标签: html html5 image

是否可以加载没有图像名称的图像? 像这样:

<img src="http://www.example.com" />

仅使用url的原因是因为每次在url上都有其他图像,因此图像名称是动态的。

我用谷歌搜索但我找不到解决方案。

3 个答案:

答案 0 :(得分:4)

是的,当然。

请记住,文件系统和HTTP请求/响应之间存在差异。当您提出类似这样的请求时:

http://www.example.com/image.jpg

看起来像您正在申请文件。但你实际上在做的是请求一个HTTP资源。 Web服务器接收该请求,在这种情况下很可能将其转换为文件系统路径。 Web服务器将该文件加载到内存中,然后发出带有文件内容的HTTP响应(以及该类型文件的HTTP头)。

关键是,所有文件系统交互都发生在服务器端,Web浏览器或任何客户端发出请求时完全不知道。该数据是来自文件还是数据库条目或其他服务器端位置没有区别。只要生成的HTTP响应包含数据和HTTP标头,就没有区别。

所以你可以轻松地请求这样的东西:

http://www.example.com/someHandler?id=123

也许服务器端处理程序有一些代码可以根据id值获取特定的数据。也许这些数据是图像。只要图像的响应正确,浏览器/客户端就不会知道差异。

HTTP请求中没有“名称”(在文件名的意义上)的概念,只是资源URL。该URL可以是任何内容。服务器端应用程序负责相应地返回数据和标头。

答案 1 :(得分:0)

如果向http://www.example.com发出请求并且响应是某种形象,那么是。网址不一定要有.jpg.png或其他图像文件扩展名。但是你必须知道你正在执行请求的URL。

答案 2 :(得分:0)

是的!

假设您可以在服务器上使用php http://www.example.com/

如果您使用以下代码添加index.php

<?php
    $file = '../image.jpg';
    $type = 'image/jpeg';

    header('Content-Type:'.$type);
    header('Content-Length: ' . filesize($file));
    readfile($file);
?>

http://www.example.com/将返回图片(使用正确的MIME),可以通过以下方式阅读:<img src="http://www.example.com" />

相关问题