2017-01-25 8 views
0

問題:「.doc」、「.docx」、「.pdf」および画像ファイルをdropboxにアップロードするためにnet/httpコードを使用しています。ファイルがアップロードされているが、それがコンテンツをアップロードしていないとさえ、それが破損ファイルとしてアップロードしながら、今dropboxにdocおよびpdfファイルをアップロード中に問題が発生しました

  • UTF 8に

    1. 無効なバイトシーケンス:しかし、私は次のような問題を取得します。

    以下、私のコードを書いてdropboxにファイルをアップロードします。私を助けてください。

    コード:

     uri = URI.parse("https://content.dropboxapi.com/2/files/upload") 
         request = Net::HTTP::Post.new(uri) 
         request.content_type = "application/octet-stream" 
         request["Authorization"] = "Bearer #{$acess_token}" 
         request["Dropbox-Api-Arg"] = "{\"path\":\"/Sass-for-Web-Designers.pdf\"}" 
         request.body = "" 
         request.body << File.open("app/assets/images/categoryImages/Sass-for-Web-Designers.pdf").read 
         #request.body << file.content 
         #file.close 
         #end 
         req_options = { 
         use_ssl: uri.scheme == "https", 
         } 
         response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http| 
         http.request(request) 
         end 
    
  • 答えて

    0

    私は解決策を得ました。ファイルがバイナリではなくテキスト形式で読み込んでいるからです。

    request.body << File.open("app/assets/images/categoryImages/Sass-for-Web-Designers.pdf", 'rb').read 
    

    おかげ

    上記のコードで更新行の下に
    関連する問題