我需要创建一个带有虚拟数据的响应,我可以将其传递给其他方法.这是Alamofire中Response对象的初始化程序:
public init(request: NSURLRequest?,response: NShttpURLResponse?,data: NSData?,result: Result<Value,Error>)
但是我无法弄清楚如何创建这个对象,因为我无法创建一个Result.以下是Alamofire的一些结果类:
public enum Result<Value,Error: ErrorType> { case Success(Value) case Failure(Error) /// Returns `true` if the result is a success,`false` otherwise. public var isSuccess: Bool { switch self { case .Success: return true case .Failure: return false } } /// Returns `true` if the result is a failure,`false` otherwise. public var isFailure: Bool { return !isSuccess } /// Returns the associated value if the result is a success,`nil` otherwise. public var value: Value? { switch self { case .Success(let value): return value case .Failure: return nil } } /// Returns the associated error value if the result is a failure,`nil` otherwise. public var error: Error? { switch self { case .Success: return nil case .Failure(let error): return error } }}
我似乎无法弄清楚如何将结果传递给带有值的响应对象,以表示API响应.
我觉得我对枚举感到困惑,以及它们如何在变量中加入变量.
任何人都可以帮我建立回应吗?
谢谢.
ANSWERED
感谢您的回答……以下是使用Json响应创建整个响应的方法
let london : NSDictionary = ["name" : "london","latitude" : 23.00,"longitude" : 0.0,"ID" : "london_gb"] let paris : NSDictionary = ["name" : "paris","latitude" : 30.00,"longitude" : -1.0,"ID" : "paris_fr"] let locations = NSArray(array: [london,paris]) let result = Result<AnyObject,NSError>.Success(locations) var response = Response(request: NSURLRequest(),response: NShttpURLResponse(),data: NSData(),result: result)解决方法 看下面的例子:
let result = Result<String,NSError>.Success("Hello")result.isSuccess // prints trueresult.value // prints "Hello"
希望有所帮助
总结以上是内存溢出为你收集整理的ios – 为测试创建Alamofire响应全部内容,希望文章能够帮你解决ios – 为测试创建Alamofire响应所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)