Just是一个基于客户端的HTTP库,灵感来自python-requests - HTTP for Humans。
Just需要Swift 4.2。如果您需要Swift 3.1的支持,请使用版本 0.6.0。
有关最新更新的信息,请关注 @JustHTTP,如果您对此感兴趣的话
功能
Just可以让您轻松完成以下操作
- URL查询
- 自定义头部
- 表单(
x-www-form-urlencoded
)/ JSON HTTP正文 - 重定向控制
- 带有表单值的多部分文件上传
- 基本/摘要身份验证
- cookie
- 超时
- 同步/异步请求
- 对异步请求的上传/下载进度跟踪
- 链接头部
- 易于访问的结果
用途
Just发出的最简单的请求看起来像这样
// A simple get request
Just.get("http://httpbin.org/get")
以下示例显示了如何上传文件和一些数据
// 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! */ }
这是同样的异步示例
// 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 in
if r.ok { /* success! */ }
}
更多详情请参考 入门指南,它可以在网上或在此playground中找到!
安装
以下是一些利用 Just 的方法。
Swift Package Manager
将以下内容添加到你的 dependencies
中
.package(url: "https://github.com/JustHTTP/Just.git", from: "0.7.0")
… 然后 "Just"
添加到你的目标依赖中。
Carthage(仅限 Swift 3)
在 Cartfile 中包含以下内容
github "JustHTTP/Just"
Just 包含了 iOS 和 OS X 上的动态框架目标。
CocoaPods
常规方式
platform :ios, '8.0'
use_frameworks!
target 'MyApp' do
pod 'Just'
end
手动
将 Just.xcodeproj
拖到你的项目导航器。在你的项目设置的“通用”标签下,使用加号将 Just.framework
添加到“链接的框架和库”。确保包括适用于你的目标平台正确的版本。
通常也会将 Just 作为 Git 子模块添加到你的项目仓库中
cd path/to/your/project
git submodule add https://github.org/JustHTTP/Just.git
源文件
直接将 Just.swift
放入你的项目中。或者,将它放在游乐场项目的“源”文件夹中。(后一种方法是一个探索网络的好方法。)
贡献
欢迎提交拉取请求。以下是一些面向代码贡献者的提示。
在 Just.xcworkspace
中进行工作。
链接头测试依赖于Github API,每小时的请求限制较低。为了克服这一限制,您可以编辑Xcode构建方案并添加环境变量 GITHUB_TOKEN
。有关个人令牌的更多信息请见此处。
对于Xcode使用者,请查看 Makefile
。
HTML文档页面由文献程序工具 docco 生成。
许可证
MIT,见 LICENSE.md。