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.