Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A (better?) replacement for open-uri. Lets you open local and remote files by immediately returning their contents as a string.
Ruby
Branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib return the body of error messages
test return the body of error messages
.gitignore
CHANGELOG
Gemfile
README.rdoc
Rakefile
eat.gemspec

README.rdoc

eat

Problems with the standard open-uri library

  • sometimes it returns String and sometimes StringIO (check out OpenURI::Buffer::StringMax, usually 10,240 bytes)

  • sometimes you have to call gets (for example open('yahoo.com').gets)

  • it overrides #open everywhere, which may be confusing.

Try #eat, which ALWAYS returns a String:

require 'eat'
eat('http://yahoo.com')                 #=> String
eat('/home/seamus/foo.txt')             #=> String
eat('file:///home/seamus/foo.txt')      #=> String

Options

eat('http://yahoo.com', :timeout => 10)                   # timeout after 10 seconds
eat('http://yahoo.com', :limit => 1024)                   # only read the first 1024 chars
eat('https://yahoo.com', :openssl_verify_mode => 'none')  # don't bother verifying SSL certificate

Warning: DOES verify SSL certs

If you want to disable verification of SSL certificates, use

:openssl_verify_mode => 'none'

Thanks @codahale and @peterc for their suggestions.

Supported schemas

  • local filesystem

  • http

  • https

Copyright 2011 Seamus Abshere

Something went wrong with that request. Please try again.