SwiftyHawk

master

Hawk authentication implementation in Swift
cpageler93/SwiftyHawk

SwiftyHawk

Swift Version PackageManager Platforms License Twitter: @cpageler93

SwiftyHawk is a Swift implementation of Hawk HTTP authentication scheme.

Install

Carthage

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

Swift Package Manager

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"])
    ]
)

Usage

// 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 ?? ""

Need Help?

Please submit an issue on GitHub.

License

This project is licensed under the terms of the MIT license. See the LICENSE file.

Description

  • Swift Tools 4.0.0
View More Packages from this Author

Dependencies

Last updated: Tue Apr 02 2024 06:21:00 GMT-0900 (Hawaii-Aleutian Daylight Time)