issues with rest client api

Here i am trying to pass one ID with the url, but that ID didn’t append with URL…

def retrieve

url = "http://localhost:3000/branches/"

resource = RestClient::Resource.new url+$param[“id”]

puts resource

**end **

giving ID via commend line that is

ruby newrest.rb id="22"

I have got the error like this

`+’: can’t convert nil into String (TypeError)

But all this working with mozilla rest client…How to rectify this problem…?PLz give me a solution

Thank you

vishnu

Here i am trying to pass one ID with the url, but that ID didn't append with
URL...

def retrieve
url = "http://localhost:3000/branches/"
resource = RestClient::Resource.new url+$param["id"]
puts resource
end

giving ID via commend line that is

ruby newrest.rb id="22"

What is in newrest.rb?

Colin

def retrieve
url = “http://localhost:3000/branches/
resource = RestClient::Resource.new url+$param[“id”]
puts resource
end

giving ID via commend line that is

ruby newrest.rb id=“22”

What is in newrest.rb?

Colin

newrest.rb

require 'rubygems’

require 'rest_client’

require 'json’

$param = Hash.new

def retrieve

url = "http://localhost:3000/branches"

resource = RestClient::Resource.new url +"/"+$param[“id”]

puts resource

begin

response = resource.get :content_type => :json, :accept => :json

case response.code

when 200

puts response.to_s

end

rescue => e

puts e

end

**end **

Here just i pass the ID through command line ie ruby newrest.rb id=“22”. so what i need is , the above code have this

url = "http://localhost:3000/branches"

resource = RestClient::Resource.new url +"/"+$param[“id”]

i have to read that id value, which coming via the command line, and append that value with this URL "http://localhost:3000/branches/22"

So******resource = RestClient::Resource.new url +"/"+$param[“id”] **this is the correct to get that value? or any way to get the value and append?

                      newrest\.rb

require 'rubygems'

require 'rest_client'

require 'json'

$param = Hash.new

def retrieve

url =  "http://localhost:3000/branches"

resource = RestClient::Resource\.new url \+"/"\+$param\["id"\]

puts resource

begin

    response = resource\.get :content\_type => :json, :accept => :json

    case response\.code

    when 200

        puts response\.to\_s

    end

rescue => e

puts e

end

end

Here just i pass the ID through command line ie ruby newrest.rb id="22".

I don't see in the code where the method retrieve is called, so I
would not expect ruby newrest.rb to do anything.
Also I don't see how the command line value id is being loaded into
$param. Normally for ruby command line args I use ARGV or
OptionParser. Google for ruby command line parameters and you will
find how to do it.

Colin

                      newrest.rb

require ‘rubygems’

require ‘rest_client’

require ‘json’

$param = Hash.new

def retrieve

url =  "[http://localhost:3000/branches](http://localhost:3000/branches)"

resource = RestClient::Resource.new url +"/"+$param["id"]

puts resource

begin

    response = resource.get :content_type => :json, :accept => :json

    case response.code

    when 200

        puts response.to_s

    end

rescue => e

puts e

end

end

Here just i pass the ID through command line ie ruby newrest.rb id=“22”.

I don’t see in the code where the method retrieve is called, so I would not expect ruby newrest.rb to do anything.Also I don’t see how the command line value id is being loaded into$param. Normally for ruby command line args I use ARGV orOptionParser. Google for ruby command line parameters and you will find how to do it.

Colin

I got it through the ARGV…

Thankyou

vishnu