Just is a client-side HTTP library inspired by python-requests - HTTP for Humans.
Swift 1.2 support can be found on master branch.
Follow @JustHTTP for updates, if you are into that kind of things 😉
Just lets you to the following effortlessly:
- URL queries
- custom headers
- form (
x-www-form-encoded
) / JSON HTTP body - redirect control
- multpart file upload along with form values.
- basic/digest authentication
- cookies
- timeouts
- synchrounous / asyncrounous requests
- upload / download progress tracking for asynchronous requests
- link headers
- friendly accessible results
The simplest request with Just looks like this:
// A simple get request
Just.get("http://httpbib.org/get")
The next example shows how to upload a file along with some data:
// talk to registration end point
let r = Just.post(
"http://justiceleauge.org/member/register",
data: ["username": "barryallen", "password":"ReverseF1ashSucks"],
files: ["profile_photo": .URL(fileURLWithPath:"flash.jpeg", nil)]
)
if (r.ok) { /* success! */ }
Here's the same example done asyncronously:
// talk to registration end point
Just.post(
"http://justiceleauge.org/member/register",
data: ["username": "barryallen", "password":"ReverseF1ashSucks"],
files: ["profile_photo": .URL(fileURLWithPath:"flash.jpeg", nil)]
) { (r)
if (r.ok) { /* success! */ }
}
Just can do much, much more. Read Getting Started on the web or in this playground to learn more!
Here are some ways to leverage Just.
Include the following in your Cartfile:
github "JustHTTP/Just"
Just includes dynamic framework targets for both iOS and OS X.
The usual way:
platform :ios, '8.0'
use_frameworks!
target 'MyApp' do
pod 'Just'
end
Drop Just.xcodeproj
into your project navigator. Under the General tab of
your project settings, use the plus sign to add Just.framework
to
Linked Framework and Libraries. Make sure to include the correct version
for your target's platform.
It's also common to add Just as a git submodule to your projects repository:
cd path/to/your/project
git submodule add https://github.org/JustHTTP/Just.git
Put Just.swift
directly into your project. Alternately, put it in the
Sources folder of a playground. (The latter makes a fun way to explore the
web.)
Pull requests are welcome. Here are some tips for code contributors:
Work in Just.xcworkspace
.
Tests requires Quick, which is a submodule to this repository. Make sure you run the following before attempting to test:
git submodule update --init --recursive
For Xcode rebels, checkout Makefile
(you'll need xcpretty).
HTML documentation pages are generated by literate programmin tool docco
MIT, see LICENSE.md.