artdanil
artdanil

Reputation: 5082

RestClient using Resource for GET action

I am writing a ruby client for the REST API using RestClient gem. While going through examples, I see different code used to achieve basically the same result, without any explanation on the difference.

client = RestClient::Resource.new('https://example.com/')
response = client.get

VS

response = RestClient.get('https://example.com/')

What is the benefit of using Resource class, if I can achieve same thing with get method?

Upvotes: 2

Views: 782

Answers (1)

mdmoskwa
mdmoskwa

Reputation: 138

Code reuse. It's especially useful when you're dealing with APIs, and you need to hit the same base urls over and over, with different params and/or paths. As the docs show you, once you build a base resource:

client = RestClient::Resource.new('https://example.com/')

You can access other paths under this resource quite easily:

response = client["/users/1"].get

Which is equivalent to

response = RestClient.get("https://example.com/users/1")

but less typing/repetition.

Upvotes: 3

Related Questions