Skip to content

Instantly share code, notes, and snippets.

@sarsena
Last active August 29, 2015 14:04
Show Gist options
  • Save sarsena/d191a08c39c1ce34a014 to your computer and use it in GitHub Desktop.
Save sarsena/d191a08c39c1ce34a014 to your computer and use it in GitHub Desktop.
NoMethodError: undefined method `+' for nil:NilClass
from /Users/sarsena/.rvm/rubies/ruby-1.9.3-p362/lib/ruby/1.9.1/net/http.rb:1404:in `addr_port'
from /Users/sarsena/.rvm/rubies/ruby-1.9.3-p362/lib/ruby/1.9.1/net/http.rb:1339:in `begin_transport'
from /Users/sarsena/.rvm/rubies/ruby-1.9.3-p362/lib/ruby/1.9.1/net/http.rb:1315:in `transport_request'
from /Users/sarsena/.rvm/rubies/ruby-1.9.3-p362/lib/ruby/1.9.1/net/http.rb:1293:in `request'
from /Users/sarsena/.rvm/rubies/ruby-1.9.3-p362/lib/ruby/1.9.1/net/http.rb:1286:in `block in request'
from /Users/sarsena/.rvm/rubies/ruby-1.9.3-p362/lib/ruby/1.9.1/net/http.rb:745:in `start'
from /Users/sarsena/.rvm/rubies/ruby-1.9.3-p362/lib/ruby/1.9.1/net/http.rb:1284:in `request'
from /Users/sarsena/.rvm/gems/ruby-1.9.3-p362/gems/faraday-0.9.0/lib/faraday/adapter/net_http.rb:80:in `perform_request'
from /Users/sarsena/.rvm/gems/ruby-1.9.3-p362/gems/faraday-0.9.0/lib/faraday/adapter/net_http.rb:39:in `call'
from /Users/sarsena/.rvm/gems/ruby-1.9.3-p362/gems/faraday-0.9.0/lib/faraday/request/url_encoded.rb:15:in `call'
from /Users/sarsena/.rvm/gems/ruby-1.9.3-p362/gems/faraday-0.9.0/lib/faraday/rack_builder.rb:139:in `build_response'
from /Users/sarsena/.rvm/gems/ruby-1.9.3-p362/gems/faraday-0.9.0/lib/faraday/connection.rb:377:in `run_request'
from /Users/sarsena/.rvm/gems/ruby-1.9.3-p362/gems/faraday-0.9.0/lib/faraday/connection.rb:177:in `post'
from (irb):31
from /Users/sarsena/.rvm/gems/ruby-1.9.3-p362/gems/railties-3.2.19/lib/rails/commands/console.rb:47:in `start'
from /Users/sarsena/.rvm/gems/ruby-1.9.3-p362/gems/railties-3.2.19/lib/rails/commands/console.rb:8:in `start'
from /Users/sarsena/.rvm/gems/ruby-1.9.3-p362/gems/railties-3.2.19/lib/rails/commands.rb:41:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
class DyoShippingClient
def self.connection
Faraday.new(:url => ENV["IHP_SHIPMENT_CLIENT_URL"]) do |faraday|
faraday.request :url_encoded
faraday.headers["Content-Type"] = "application/json; charset=utf-8"
faraday.adapter Faraday.default_adapter # make requests with Net::HTTP
end
end
def self.post_to_api(shipment)
connection.post "orders/#{shipment.order_number}/shipment/#{shipment.master_tracking}", params(shipment)
end
def self.params(shipment)
{tracking_number: shipment.master_tracking, status: shipment.shipment_status, delivered_at: shipment.package.lastupdated}
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment