seamusabshere / Eat
Licence: mit
A (better?) replacement for open-uri. Lets you open local and remote files by immediately returning their contents as a string.
Stars: ✭ 34
Programming Languages
ruby
36898 projects - #4 most used programming language
=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('http://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
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].