0

目前,我想编写一个包含我所有 API 的 APIEndpoint 类。我有一个变量baseURL,我想将它用于遗体。但是当我尝试如下写它时,它会出错。

class APIEndpoint {
    static let shared = APIEndpoint()
    static let baseURL = "https://13.251.102.94:5001/api/"
    static let login = URL(string: baseURL + "auth/customer/login")!
}

我的功能

func performLogin () {
        var request = URLRequest(url: APIEndpoint.shared.login)
        request.httpMethod = "POST"
        let json: [String: String] = ["username": self.name, "password": self.password]
        request.httpBody = try? JSONSerialization.data(withJSONObject: json)
        Network.shared.session.dataTask(with: request) { (data, response, err) in
            guard let data = data else { return }
            print(JSON(data)["data"])
        }.resume()
}

错误:

静态成员“login”不能用于“APIEndpoint”类型的实例

排队:var request = URLRequest(url: APIEndpoint.shared.login)

4

1 回答 1

1

login 并且baseURL是 class 的静态成员APIEndpoint。您已经可以将它们用作APIEndpoint.loginand APIEndpoint.baseURL。在你的情况下,你应该写

var request = URLRequest(url: APIEndpoint.login)
于 2019-11-25T08:59:45.787 回答