4
例子:西納特拉:如何與頭的圖像「內容類型」 =>「圖像/ JPEG」迴應
require 'sinatra'
get '/somekey' do
headers('Content-Type' => "image/jpeg")
["http://upload.wikimedia.org/wikipedia/commons/2/23/Lake_mapourika_NZ.jpeg", "http://img.brothersoft.com/screenshots/softimage/j/jpeg_converter-4567-1.jpeg"].sample
end
我想與那不是我的服務器上託管的圖像響應。
我該如何解決這個問題?
注意: 圖像的鏈接不是祕密(因爲它在S3上託管)。這是一個生成identicons的網站。
結帳http://identico.in/[insert_any_key_here]。原因是我希望服務器進行查找,如果圖像已經存在於S3上,則使用該圖像,如果沒有,則生成一個,然後將其上傳到s3。
注: 如果我:
require "open-uri"
open ["http://upload.wikimedia.org/wikipedia/commons/2/23/Lake_mapourika_NZ.jpeg", "http://img.brothersoft.com/screenshots/softimage/j/jpeg_converter-4567-1.jpeg"].sample
然後它工作,但是,我覺得這可能是慢了很多,因爲我的服務器首先要下載的圖片,打開它,然後用戶有從我的服務器下載圖像。
嗨伊萬,謝謝你的迴應。然而,JavaScript不會工作,因爲我希望客戶能夠在他們的HTML內使用它,例如「
」。請參閱我的更新問題 –
samol
好吧,我明白了,這裏有更多選項。當你使用S3時,你可以看看http://stackoverflow.com/questions/1322030/using-send-file-to-a-remote-source-ruby-on-rails這個答案。它會給你一些想法如何從s3提供文件。 更重要的是,您可以在生成文件時發送文件,然後將文件發送到其他線程中的S3。 –