2014-02-13 80 views
4

是否可以加載沒有圖像名稱的圖像? 像這樣:是否可以加載沒有圖像名稱的圖像?

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

僅使用url究其原因,是因爲每次在URL上的其他圖像,所以圖像名稱是動態的。

我已經谷歌搜索,但我找不到解決方案。

+0

除非該鏈接返回其他名稱,否則不可能 – anurupr

+0

圖像名稱是URL的一部分。所以這不是「沒有圖像名稱」,它只是一個不同的網址。 – Jon

+2

如果'http://www.example。com'返回的東西與圖像的MIME類型,它應該工作 – RononDex

回答

0

是的!

假如你可以使用你的服務器http://www.example.com/

在PHP如果您使用此代碼添加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" />

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。該網址可以是任何內容。服務器端應用程序有責任相應地返回數據和標題。

0

如果一個請求將被作出http://www.example.com和響應將是某種形象然後是的。 URL不一定必須具有.jpg.png或其他圖像文件擴展名。但是你必須知道你正在執行請求的URL。

相關問題