2013-09-10 108 views
0

如何將圖片轉換爲二進制BASE64並通過發送到另一個API來保存?將圖片轉換爲二進制BASE64

它看起來是這樣的:

  1. 用戶導入照片通過HTML表單,並把它轉換成二進制BASE64代碼:

    base64_encode = Base64.encode64(img_from_fild_form) 
    
  2. 的數據被髮送到另一個API(媒體):

    options = { :auth_key=>01qw6, :post_id=>20, :base64_encode=>base64_encode } 
    HTTParty.post('localhost:9000/save_image', options) 
    
+0

「二進制BASE64」沒有意義,因爲BASE64是二進制或文本的ASCII編碼。 –

回答

1

如果輸入是從軌道的形式,那麼它可能那麼容易,因爲:

Base64.encode64(params[:key_for_file].read) 

上傳的文件很可能這應該是容易的ActionDispatch::Http::UploadedFile

+0

如何獲取ActionDispatch :: Http :: UploadedFile的實例。 檢視: '= file_field_tag:file' 控制器: '上傳= ActionDispatch :: HTTP :: UploadedFile.new({ :臨時文件=> File.new( 「ig.png」) })' –

+0

是這一個問題?你不需要手動實例化它。 Rails params解析器應該爲你做。 – firien

0

實例爲:

require 'base64' 
base64_encoded = Base64.encode64(img_from_file_form) 

希望有所幫助。 :)

相關問題