cossack
Cossack 
Simple and flexible HTTP client for Crystal programming language.
Roadmap
- [x] Middleware support
- [x] Use URI to parse URL
- [x] Allow
Client
be initialized with baseurl
- [x] support headers for individual request
- [x] support headers for Client
- [x] Support of all HTTP verbs
- [x] get
- [x] post
- [x] put
- [x] patch
- [x] delete
- [x] head
- [x] options
- [x] Implement class methods, like
Cossack.get
,Cossack.post
, etc.. - [x] Swapping connections like Hurley does
- [x] Timeout
- [ ] Beta test of API
- [ ] Update GoogleTranslate client to use Cossack
- [ ] Update Glosbe client to use Cossack
- [ ] Follow redirections
- [ ] Examples
- [ ] Unit tests
- [ ] Additional sugar
- [ ] Pass headers to Response.new and Request.new as Hash(String, String)
- [ ] Add
:headers
argument to http methods - [ ] status methods for response (success?, redirect?, etc..)
- [x] Acceptance tests
- [ ] Good documentation, describing the concept and usage.
- [ ] First release!
- [ ] SSL
- [ ] Proxy
Installation
Add this to your application's shard.yml
:
dependencies:
cossack:
github: greyblake/crystal-cossack
And install dependencies:
crystal deps
Usage
require "cossack"
cossack = Cossack.new
cossack.get("http://some.url/path")
Development
To run test:
make test
Contributors
- greyblake Sergey Potapov - creator, maintainer