问题标签 [moya]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1437 浏览

swift3 - 如何从 MoyaError 获取错误响应

类似,但这次我需要检索服务器的 JSOn 响应。

这是我现有的代码:

我的问题是:我可以得到错误响应代码 404error.localizedDescription但我也想得到 404 HTTP 请求的 JSON 响应。

0 投票
1 回答
1069 浏览

json - 使用 Rx 编程 Moya 将 JSON 响应映射到对象

我正在尝试像这样使用 ModelMapper 库的 mapObject 函数:

用这个 Json :

我试图用这种方式看看有什么错误:

我在控制台中得到了这个:

这是我的映射结构:

我也尝试过 pod 更新,但没有任何改变。我真的不明白为什么它不起作用。

在此先感谢您的帮助!

0 投票
0 回答
862 浏览

swift - Moya.Error/Swift 如何获取错误的响应体

我已经问过这个问题,但我的措辞很差。

假设我的 API 响应代码是 404,我的目标是获取该错误 API 的 JSON 响应正文。当然我可以得到响应代码,但是响应正文呢?

0 投票
1 回答
806 浏览

ios - 在 RxMoya 中重复请求

我正在使用最新版本的 Moya 和 RxSwift,我遇到了一个逻辑问题,目前我找不到解决方案。

假设我有一个带有 ViewModel 的 UITableViewController,它实现了以下接口:

items属性实现为(使用 EVReflection):

在 UITableViewController 的 viewDidLoad 方法中,我通过以下代码在 items 属性和 tableView 之间建立了绑定:

现在,我想刷新 UITableView 的内容以反映用户通过应用程序的其他部分所做的更改。考虑到 RxMoyaProvider 返回一个 Observable,这应该可以通过 Observable 发出的另一个值轻松完成,但我不知道如何与提供者通信,它应该刷新来自服务器的内容并将其放入同一个 Observable。

我在这里错过了什么吗?是否有更推荐的方法将 UITableView 绑定到来自 RxMoyaProvider 的对象列表?

0 投票
1 回答
233 浏览

ios - EVReflection + Moya + Realm + RxSwift - 无法为 dict 类型创建实例

我坚持将以上所有内容放在一起。如果我能得到任何意见,我将不胜感激。

这是我的简短设置:

示例领域模型:

要获取产品详细信息,我使用 Moya 和 RxSwift:

我认为.map(to: Product.self)不适用于开箱即用的领域列表。对于列表中的每个对象,我得到一个错误:

有没有其他方法可以将 Moya 响应映射到 Realm 对象中?

非常感谢您的任何意见!

0 投票
2 回答
4546 浏览

ios - 如何使用 Moya 取消多个网络请求

我目前正在使用Moya来构建我的网络调用。根据他们的文档,我将其配置如下:

调用端点(在本例中为endPoint1)时,我执行以下操作:

我的目标是,在用户执行操作后,取消所有正在发生的网络请求。

因此,Moya 确实允许从此处的讨论中取消请求。从最受好评的评论中,有人提到let request_1 = MoyaRequestXXXXX然后ruest_1.cancel()

我的问题是:

  1. 我将如何保持指向请求的指针?
  2. provider没有cancel()功能 - 那么我应该如何调用它?

任何帮助深表感谢。

编辑:

根据有关 using 的有用建议[Cancellable],我执行了以下操作:

(1) 在我的应用程序的单例实例Operator中,我添加了var requests = [Cancellable]() (2) 每个 API 调用都作为可取消添加到requests数组中,如下所示:

我认为我的语法不正确,并且正在添加提供程序而不是请求。但是,既然请求本身就是一个块,那么添加请求的地方在哪里呢?

0 投票
0 回答
475 浏览

swift3 - Moya 映射器无法从结果中映射对象 - Swift 3

好吧,嗨,我正在使用 moyamapper,我尝试过不同的库,但我发现所有库都存在相同的问题,我无法理解我哪里出错了。现在我有一种方法可以在 moya 结果中得到结果,直到她都很好

我在这里使用pod 'MoyaModelMapper'

我在这里得到了结果,它很好,但是当我尝试将结果映射到一个对象时,我得到一个错误,如果我将字符串映射为一个简单的状态字符串,那么它可以工作,但是对于对象它会抛出错误,我无法理解这里有什么问题。

我试过了

和许多其他映射器库,但我遇到了同样的问题。下面是我试图解析为对象的 json

我想将其解析为的模型是

提前致谢!!!

0 投票
1 回答
917 浏览

ios - 使用 moya 和 alamofire 时使用参数编码发布请求错误

我使用 moya 发出帖子请求,但是当我发送帖子时,服务器给我一个错误,它无法解码正文参数。我使用 URLEncoding.default 对这样的参数进行编码

它将设置内容类型application/x-www-form-urlencoded,并且服务器接受的内容类型也相同

如果 parameters 是像这样的字典 {"a":"b"} ,那效果很好,但是如果字典包含数组或另一个字典,则服务器无法从请求正文中获取参数。

前任:

alamofire 会将其编码为 "a"="xxx"&b[]=xxxx&b[]=xxx

但服务器期望 a=xxx&b[0]=xxx&b[1]=xxxx

如何解决这个问题呢 ?

0 投票
0 回答
297 浏览

swift - 尝试将简单的 Alamofire 请求转换为 Moya 时出错

我正在尝试改进网络层,所以我使用Moya来创建更具可扩展性的代码。

我有一个简单的请求方法(使用 Alamofire),它请求一个 JSON 对象(我使用这个theMovieDB api 作为示例。所以,这是工作代码:

上面的代码工作得很好,但我想编写 Moya 等效结构,所以我有这个,在文档中受到强烈启发:

使用 Moya 服务时:

使用 Moya 服务时,我总是收到 504 或超时响应。

有任何想法吗?

0 投票
0 回答
350 浏览

ios - 上传带参数的多部分表单数据时出现 404 错误

我正在尝试在 moya 中上传带有参数的图像作为多部分表单数据。我有以下 api:

但是,响应状态码给出了 404,它在邮递员中工作正常。