Routing¶
Routing (vapor/routing) is a small framework for routing things like HTTP requests. It lets you register and lookup routes in a router using nested, dynamic path components.
For example, the routing package can help you route a request like the following and collect the values of the dynamic components.
/users/:user_id/comments/:comment_id
Vapor¶
This package is included with Vapor and exported by default. You will have access to all Routing APIs when you import Vapor.
Tip
If you use Vapor, most of Routing's APIs will be wrapped by more convenient methods. See Getting Started → Routing for more information.
import Vapor
Standalone¶
The Routing package is lightweight, pure-Swift, and has very few dependencies. This means it can be used as a routing framework for any Swift project—even one not using Vapor.
To include it in your package, add the following to your Package.swift file.
// swift-tools-version:4.0 import PackageDescription let package = Package( name: "Project", dependencies: [ ... .package(url: "https://github.com/vapor/routing.git", from: "3.0.0"), ], targets: [ .target(name: "Project", dependencies: ["Routing", ... ]) ] )
Use import Routing to access the APIs.
Warning
Some of this guide may contain Vapor-specific APIs, however most of it should be applicable to the Routing package in general. Visit the API Docs for Routing-specific API info.