[英]Ruby on Rails - Clean up url parameters
我設置了一個Rails應用程序,以便在用戶上傳圖像時將其直接發送到Amazon的S3。 我必須在表單代碼中指定重定向地址。 圖片上傳完成后,Amazon將用戶重定向到www.redirect_address.com/?bucket=[BUCKET]&key=[KEY]&etag=[ETAG]
我需要bucket
和key
信息來處理圖像,但是用戶是否有辦法不在地址框中看到所有這些參數。 www.redirect_address.com
仍可讓我獲得所有信息並讓用戶看到的所有www.redirect_address.com
謝謝!
提姆
這里的一個好方法是通過x發送文件插件(參見: nginx xsendfile或apache mod_xsendfile )由前端Web服務器使用流式傳輸,並且在rails中您可以執行以下操作:
def avatar
if @user.avatar?
response.headers["X-Accel-Redirect"] = @user.s3_avatar_url
head :ok
else
head :error # or display a default image , whatever you want here
end
end
並設置了一個HTTP標頭X-Accel-Redirect
,該標頭從您的應用服務器發送到apache / nginx,一旦您將模塊鏈接到上述安裝,便告訴網絡服務器將文件直接流式傳輸到客戶端,但是它們的網址與對您應用的正常請求(/ users /:id / avatar或其他)相同,因為沒有重定向。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.