SwiftyHawk
is a Swift implementation of Hawk HTTP authentication scheme.
To install SwiftyHawk
with Carthage, setup Carthage for your project as described in the Quick Start.
Then add this line to your Cartfile:
github "cpageler93/SwiftyHawk" ~> 0.1.4
To install SwiftyHawk
with Swift Package Manager add SwiftyHawk
to your Package.swift
// swift-tools-version:4.0
// The swift-tools-version declares the minimum version of Swift required to build this package.
import PackageDescription
let package = Package(
name: "Dependencies",
products: [
.library(name: "Dependencies", targets: ["Dependencies"]),
],
dependencies: [
.package(url: "https://github.com/cpageler93/SwiftyHawk", from: "0.1.4")
],
targets: [
.target(name: "Dependencies", dependencies: ["SwiftyHawk"])
]
)
// init credentials
let hawkCredentials = Hawk.Credentials(id: "your hawk id", key: "your hawk key", algoritm: .sha256)
// modify each outgoing http request
let headerResult = try? Hawk.Client.header(uri: "baseurl + path",
method: "GET", // POST, PATCH, ...
credentials: hawkCredentials,
nonce: "FOOBAR")
httpRequest.headers["Authorization"] = headerResult?.headerValue ?? ""
Please submit an issue on GitHub.
This project is licensed under the terms of the MIT license. See the LICENSE file.