Моя - Как включить пример данных? - PullRequest
0 голосов
/ 06 июня 2018

Я начал изучать Моя для Netwroking

Требуется при реализации TargetType

Есть ли способ не предоставлять выборочные данные для каждой конечной точки

И я не могу найти способ, как включить / отключить пример данных.

var sampleData: Data {
    switch self {
    case .zen:
        return "Half measures are as bad as nothing at all.".utf8Encoded
    case .showUser(let id):
        return "{\"id\": \(id), \"first_name\": \"Harry\", \"last_name\": \"Potter\"}".utf8Encoded
    case .createUser(let firstName, let lastName):
        return "{\"id\": 100, \"first_name\": \"\(firstName)\", \"last_name\": \"\(lastName)\"}".utf8Encoded
    case .updateUser(let id, let firstName, let lastName):
        return "{\"id\": \(id), \"first_name\": \"\(firstName)\", \"last_name\": \"\(lastName)\"}".utf8Encoded
    case .showAccounts:
        // Provided you have a file named accounts.json in your bundle.
        guard let url = Bundle.main.url(forResource: "accounts", withExtension: "json"),
            let data = try? Data(contentsOf: url) else {
                return Data()
        }
        return data
    }
}

Как я могу это сделать?

Ответ

static let provider = MoyaProvider<VMAPI>.init(stubClosure: MoyaProvider<VMAPI>.immediatelyStub)

Ответы [ 3 ]

0 голосов
/ 14 июня 2018

Чтобы отключить или включить пример данных в Мойе, мы должны инициировать провайдера с требуемым состоянием.

static let provider = MoyaProvider<VMAPI>.init(stubClosure: MoyaProvider<VMAPI>.immediatelyStub)
0 голосов
/ 16 июля 2018

Попробуйте этот код для sampleData в моей

var sampleData: Data {
        switch self {
        case .login(_,_):
            return "Half measures are as bad as nothing at all.".utf8Encoded

        default:
            return Data()
        }
    }
0 голосов
/ 06 июня 2018

, если вы хотите пренебречь простыми данными

  var sampleData: Data {
           return "There is No smaple Data".data(using: String.Encoding.utf8)!
    }

или если вы хотите использовать простые данные, просто сделайте так, как вы делаете в своем вопросе

...