【发布时间】:2016-10-30 22:01:22
【问题描述】:
我创建了一个简单的项目来检查 RxAlamofire 和 AlamofireObjectMapper 等库。我有一个简单的ApiService,其中一个端点是PHP 脚本,它可以正常工作并返回JSON。我想打电话给recipeURL 并使用flatMap 运算符来获得响应并将其提供给Mapper 我应该得到Recipe 对象。我该怎么做?
或者有其他方法吗?
class ApiService: ApiDelegate{
let recipeURL = "http://example.com/test/info.php"
func getRecipeDetails() -> Observable<Recipe> {
return request(.get, recipeURL)
.subscribeOn(MainScheduler.asyncInstance)
.observeOn(MainScheduler.instance)
.flatMap({ request -> Observable<Recipe> in
let json = ""//request.??????????? How to get JSON response?
guard let recipe: Recipe = Mapper<Recipe>().map(JSONObject: json) else {
return Observable.error(ApiError(message: "ObjectMapper can't mapping", code: 422))
}
return Observable.just(recipe)
})
}
}
【问题讨论】:
标签: swift swift3 alamofire rx-swift