测试已测试 | ✓ |
Lang语言 | SwiftSwift |
许可证 | Apache 2 |
发布最后发布 | 2015年10月 |
SPM支持 SPM | ✗ |
由Aaron Harmon、Martino Buffolino维护。
一个用Swift编写的微路由库,主要用于深链接用例
内嵌框架要求最低部署目标为iOS 8。
可以通过手动操作或通过Cocoapods进行集成
import Router
// create your router
let router = Router()
// bind your routes with a callback
router.bind("/route/:id") { (req) -> Void in
print(req.param("id")!)
}
// match a route
let url = NSURL(string: "routerapp://route/abc123")!
let route = router.match(url)
将闭包绑定到路由定义
router.bind("/route/:id") { (req) -> Void in
print(req.param("id")!)
}
将传入的URL与Router中的路由进行匹配。如果匹配成功,将执行闭包并返回匹配的路由
let url = NSURL(string: "routerapp://route/abc123")!
let route = router.match(url)
请求对象可以在闭包参数中访问。通过使用.param()
函数在闭包中访问URL参数(例如,从/route/:id中的id)
router.bind("/route/:id") { (req) -> Void in
let id = req.param("id")!
}
通过使用.query()
函数从回调中访问查询字符串参数(例如,/route/123?foo=bar)
router.bind("/route/:id") { (req) -> Void in
let foo = req.query("foo")!
}
许可协议为Apache License,版本2.0。有关详细信息,请参阅LICENSE文件。