Marvel API 409 响应,“您必须提供用户密钥”

Hen*_*per 2 url request swift

想知道是否有人可以在这里帮助我:

    private static func getURLRequestData(completion: @escaping (Data?) -> ()) {

    // Gets the raw JSON Data

    let session = URLSession(configuration: .default)
    guard let url = URL(string: urlString) else { return }
    var urlRequest = URLRequest(url: url)

    let headers = [
        "ts" : ts,
        "apikey" : apiKey,
        "hash" : hash,
        "limit" : limit,
        "orderBy" : orderedBy
    ]

    urlRequest.allHTTPHeaderFields = headers

    let task = session.dataTask(with: urlRequest) { (data, response, error) in

        if error != nil {
            print(#line, error!.localizedDescription)
        }

        print(response)
        completion(data)
    }
    task.resume()
}
Run Code Online (Sandbox Code Playgroud)

如您所见,我使用 API 密钥正确设置标头,但由于某种原因,我收到 409 返回值,这是缺少“用户密钥”。

有没有人经历过这样的事情。无论如何,完全相同的请求在 Paw 中起作用

小智 5

您必须根据此处的文档链接文档提供信息

例子:

var publickey = 'you-public-key';
var privatekey = 'you-private-key';
var ts = new Date().getTime();
var stringToHash = ts + privatekey + publickey;
var hash = md5(stringToHash);
var baseUrl = 'https://gateway.marvel.com:443/v1/public/characters';
var limit = 20;
var url = baseUrl + '?limit=' + limit + '&ts=' + ts + '&apikey=' + publickey + '&hash=' + hash;
Run Code Online (Sandbox Code Playgroud)