2011-08-23 70 views
3

當我運行此腳本並打開http://my_server/picture時,我得到的圖片是logo -string。Mojolicious :: Lite - 插入圖片問題

#!/usr/local/bin/perl 
use warnings; 
use 5.014; 
use Mojolicious::Lite; 

get '/picture' => sub { 
    shift->render(); 
}; 

app->start; 

__DATA__ 
@@ picture.html.ep 
<!DOCTYPE HTML> 
<html> 
<body> 
<p>Hello</p> 
<img src="/absolute/path/TEST.jpg" alt="logo" /> 
<p>World</p> 
</body> 
</html> 

當我打開這個HTML-piece作爲普通的HTML文件時,我得到了圖片。

什麼是正確的方式,插入與Mojolicious ::精簡版圖片?

回答

5

public目錄適用於靜態數據。就像在您的腳本創建它,並把圖像中當以默認設置開發服務器正在運行,你可以訪問它的URL:

http://localhost:3000/TEST.jpg 

所以你的模板可以包含:

<img src="/TEST.jpg" /> 
0

或者您可以使用:Base64 encoded DATA files

... 
__DATA__ 
@@ picture.html.ep 
<!DOCTYPE HTML> 
<html> 
<body> 
<p>Hello</p> 
<img src="/absolute/path/TEST.jpg" alt="logo" /> 
<p>World</p> 
</body> 
</html> 

@@ TEST.jpg (base64) 
/9j/4AAQSkZJRgABAQEAZABkAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB 
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEB 
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCAD6APoDASIA 
...