b14a9fa816
This PR contains the work done to improve the documentation efforts in the package, aiming at improving the documentation of the source code as well as the OpenAPI specification document. In addition, a breaking bug has been fixed. Reviewed-on: #16 Co-authored-by: Javier Cicchelli <javier@rock-n-code.com> Co-committed-by: Javier Cicchelli <javier@rock-n-code.com>
37 lines
1.7 KiB
Swift
37 lines
1.7 KiB
Swift
// ===----------------------------------------------------------------------===
|
|
//
|
|
// This source file is part of the DiscogsService open source project
|
|
//
|
|
// Copyright (c) 2026 Röck+Cöde VoF. and the DiscogsService project authors
|
|
// Licensed under Apache license v2.0
|
|
//
|
|
// See LICENSE for license information
|
|
// See CONTRIBUTORS for the list of DiscogsService project authors
|
|
//
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
//
|
|
// ===----------------------------------------------------------------------===
|
|
|
|
/// A representation of the available transport options to send credentials in authenticated requests.
|
|
///
|
|
/// This enumeration is used in conjunction with ``AuthMiddleware`` to determine how authentication credentials
|
|
/// are attached to outgoing requests.
|
|
public enum AuthTransport: CaseIterable, Sendable {
|
|
/// Authentication credentials are sent in a request as an `Authorization` header.
|
|
///
|
|
/// This means that the header will be added to any existing header in a request, like this:
|
|
/// ```bash
|
|
/// curl "https://api.discogs.com/database/search?q=Slayer" -H "Authorization: Discogs key=foo123, secret=bar456"
|
|
/// curl "https://api.discogs.com/database/search?q=Slayer" -H "Authorization: Discogs token=abcxyz123456"
|
|
/// ```
|
|
case onHeader
|
|
/// Authentication credentials are sent in a request as parameters in the query string.
|
|
///
|
|
/// This means that the parameters will be injected into the query in a request, like this:
|
|
/// ```bash
|
|
/// curl "https://api.discogs.com/database/search?q=Slayer&key=foo123&secret=bar456"
|
|
/// curl "https://api.discogs.com/database/search?q=Slayer&token=abcxyz123456"
|
|
/// ```
|
|
case onQuery
|
|
}
|