在Alamofire DataRequest上设置timeoutInterval。

我正在做一个自定义的类,需要一个Alamofire。DataRequest 在它的初始化器中,我想添加一个timeoutInterval。现在我想给它添加一个timeoutInterval,但我得到了编译错误的信息

类型’DataRequest’的值没有成员’timeoutInterval’。

这里是代码。

init(request: DataRequest, timeoutInterval: Double = 10) {
    request.timeoutInterval = timeoutInterval // <- compile error here
    self.request = request
}

显然是Alamofire DataRequest 没有这个属性。但有没有其他方法可以用这种方式指定请求的超时时间(最好不使用SessionManager)?URLRequest 有,所以应该是可以的,但我不知道怎么做。

我知道这个问题以前在Stack Overflow上被问过,但我找不到任何适合这种情况的答案。

解决方案:

在Alamofire 5.1中,我们添加了一个 “DataRequest “类型的值。requestModifier 参数到顶层 request 方法,让你可以访问 URLRequest 将被执行。

在Alamofire 4中,你有一些不那么优雅的选择。一个直接的设置方法是用一个 RequestAdapter 将其设置为请求管道的一部分。另一个更复杂的选项是将顶层的 request 方法的个别参数(如头文件),到API的个别参数(如头文件)。URLRequestConvertible 值。这样你就可以完全控制 URLRequest由Alamofire代表您执行。

给TA打赏
共{{data.count}}人
人已打赏
未分类

React JS Typescript中的Null coalescing操作符[重复]。

2022-9-8 2:34:21

未分类

在Azure Devops中,Nuget还原不能与工件源一起工作。

2022-9-8 2:34:23

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索