VaporRequestStorage

0.4.0

skelpo/vapor-request-storage

What's New

v0.4.0

2018-05-09T21:41:20Z

Subscribe Below

Storage now has subscript methods for accessing it's values should you decide to use the request's private storage instance instead of the .get and .set methods.

Request has .storage method to get it's private storage instance instead of having to fetch it manually.

let storage = try request.storage()
storage[key] // type `Any?`
storage[key] as Type? // type `Type?`
storage[key, as: Type.self] // type `Type?`

Vapor Request Storage

This package works as a replacement for request.storage which was available in Vapor 1 & 2.

Installation

Add the package declaration to your project's manifest dependencies array:

.package(url: "https://github.com/skelpo/vapor-request-storage.git", from: "0.1.0")

Then add the VaporRequestStorage to the dependencies array of any target you want access to it in.

Complete the installation by running vapor update or swift package update from the command-line.

Usage

In the configure.swift file, import VaporRequestStorage. Then register the provider with the services object passed into the configure(_:_:_:) function:

try service.register(StorageProvider())

You can now use the Storage service and a privateContainer to store data in a request.

To set a value, there is a request.set(_:to:) method:

try request.set("key", to: value)

To get the value later, use the request.get(_:as:) method:

try request.get("key", as: Value.self)

The second parameter of the get method has a default value of Stored.self, which means if you specify the return type somewhere else, you can skip passing that value in:

let value: Value = try request.get("key")

Description

  • Swift Tools 4.0.0
View More Packages from this Author

Dependencies

Last updated: Sat Mar 16 2024 23:47:03 GMT-0900 (Hawaii-Aleutian Daylight Time)