Jesus/dropbox_api

NoMethodError raised when dropbox responds with 429

Opened this issue · 0 comments

Description

Looks like Dropbox may respond with a 429 status code and no body or content type is not JSON during file chunks upload.
In this case gem failed with NoMethodError

Gem version: 0.1.21

Backtrace

NoMethodError: undefined method `[]' for nil:NilClass
  from dropbox_api/endpoints/base.rb:47:in `process_response'
  from dropbox_api/endpoints/content_upload.rb:23:in `perform_request'
  from dropbox_api/endpoints/files/upload_session_start.rb:31:in `block in <class:UploadSessionStart>'
  from dropbox_api/client.rb:36:in `block in add_endpoint'
  from dropbox_api/chunked_uploader.rb:19:in `start'
  from dropbox_api/endpoints/virtual/upload_by_chunks.rb:45:in `upload_by_chunks'

dropbox_api/endpoints/base.rb:47

45      when 429
46        error = DropboxApi::Errors::TooManyRequestsError.build(
47          raw_response.env[:api_result]['error_summary'],
48          raw_response.env[:api_result]['error']['reason']