httparty

by jnunemaker

jnunemaker / httparty

:tada: Makes http fun again!

5.3K Stars 910 Forks Last release: 10 months ago (v0.17.3) MIT License 1.2K Commits 53 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

httparty

Build Status

Makes http fun again! Ain't no party like a httparty, because a httparty don't stop.

Install

gem install httparty

Requirements

  • Ruby 2.0.0 or higher
  • multi_xml
  • You like to party!

Examples

# Use the class methods to get down to business quickly
response = HTTParty.get('http://api.stackexchange.com/2.2/questions?site=stackoverflow')

puts response.body, response.code, response.message, response.headers.inspect

Or wrap things up in your own class

class StackExchange include HTTParty base_uri 'api.stackexchange.com'

def initialize(service, page) @options = { query: { site: service, page: page } } end

def questions self.class.get("/2.2/questions", @options) end

def users self.class.get("/2.2/users", @options) end end

stack_exchange = StackExchange.new("stackoverflow", 1) puts stack_exchange.questions puts stack_exchange.users

See the examples directory for even more goodies.

Command Line Interface

httparty also includes the executable

httparty
which can be used to query web services and examine the resulting output. By default it will output the response as a pretty-printed Ruby object (useful for grokking the structure of output). This can also be overridden to output formatted XML or JSON. Execute
httparty --help
for all the options. Below is an example of how easy it is.
httparty "https://api.stackexchange.com/2.2/questions?site=stackoverflow"

Help and Docs

  • Docs
  • https://groups.google.com/forum/#!forum/httparty-gem
  • https://www.rubydoc.info/github/jnunemaker/httparty
  • http://stackoverflow.com/questions/tagged/httparty

Contributing

  • Fork the project.
  • Run
    bundle
  • Run
    bundle exec rake
  • Make your feature addition or bug fix.
  • Add tests for it. This is important so I don't break it in a future version unintentionally.
  • Run
    bundle exec rake
    (No, REALLY :))
  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself in another branch so I can ignore when I pull)
  • Send me a pull request. Bonus points for topic branches.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.