отдых с рубином - PullRequest
       1

отдых с рубином

0 голосов
/ 24 февраля 2012

Здесь я пытаюсь передать один идентификатор с URL-адресом, но этот идентификатор не добавляется с URL-адресом ...

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

, который дает идентификатор через строку с комментариями

ruby newrest.rb  id="22"

У меня такая ошибка

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

Но все это работает с клиентом Mozilla Rest.Как исправить эту проблему?

Ответы [ 4 ]

1 голос
/ 10 мая 2012

Как это:

RestClient.get 'http://localhost:3000/branches', {:params => {:id => 50, 'name' => 'value'}}
0 голосов
/ 19 мая 2013

С моей точки зрения линия puts resource кажется странной, но когда мы оставляем все как есть Я бы предложил

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

Я не пробовал, поэтому возможны синтаксические ошибки. Я действительно новичок в рубине. Но идея хорошая, я надеюсь.

Привет, Kacper

0 голосов
/ 24 февраля 2012

Параметры командной строки можно найти в глобальном массиве ARGV.

Если ruby newrest.rb 22 подойдет, просто

id = ARGV[0]
response = RestClient.get "http://localhost:3000/branches/#{id}"
puts response.body
0 голосов
/ 24 февраля 2012

Вот несколько примеров из документации:

private_resource = RestClient::Resource.new 'https://example.com/private/resource', 'user', 'pass'

RestClient.post 'http://example.com/resource', :param1 => 'one', :nested => { :param2 => 'two' }

Просто поэкспериментируйте с параметрами, разделенными запятыми, или с хешами, чтобы увидеть, что дает ваш URL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...