- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用 Alamofire 4.0 和 Swift 3.0 可以实现:
Alamofire.request("http://content.uplynk.com/player/assetinfo/ab19f0dc98dc4b7dbfcf88fa223a6c3b.json", method: .get).responseJSON {
(response) -> Void in
print("Success: \(response.result)")
}
Success: SUCCESS
但是,当我尝试使用 Sessionmanager 以便包含超时间隔时,我的请求总是失败
let configuration = URLSessionConfiguration.default
configuration.timeoutIntervalForRequest = 15
let alamofireManager = Alamofire.SessionManager(configuration: configuration)
alamofireManager.request("http://content.uplynk.com/player/assetinfo/ab19f0dc98dc4b7dbfcf88fa223a6c3b.json").validate().responseJSON {
response in
print("Success: \(response.result)")
print("Response String: \(response.result.value)")
}
Success: FAILURE
如果有人能帮助我指出正确的方向,我将不胜感激。
最佳答案
通过打印 response.result.error
我得到:
Error Domain=NSURLErrorDomain Code=-999 "cancelled" UserInfo={NSErrorFailingURLKey=http://content.uplynk.com/player/assetinfo/ab19f0dc98dc4b7dbfcf88fa223a6c3b.json, NSLocalizedDescription=cancelled, NSErrorFailingURLStringKey=http://content.uplynk.com/player/assetinfo/ab19f0dc98dc4b7dbfcf88fa223a6c3b.json}
这让我想到了这个reference :
You need to make sure that the manager is retained. The difference here is that the initialized manager is not owned, and is deallocated shortly after it goes out of scope. As a result, any pending tasks are cancelled.
解决方案:
解决您遇到的问题的一种方法是在类声明之外将自定义 session 管理器声明为全局变量,如下所示...
let sessionManager: SessionManager = {
let configuration = URLSessionConfiguration.default
configuration.timeoutIntervalForRequest = 15
return SessionManager(configuration: configuration)
}()
现在,您可以在类(class)中提出请求。
class ViewController: UIViewController {
let url = "http://content.uplynk.com/player/assetinfo/ab19f0dc98dc4b7dbfcf88fa223a6c3b.json"
override func viewDidLoad() {
super.viewDidLoad()
sessionManager.request(url).validate().responseJSON { response in
switch response.result {
case .success:
print(response.result.value as! NSDictionary)
break
case .failure:
print(response.result.error!)
break
}
}
}
}
这会给你你正在寻找的东西。希望有帮助!
关于swift3 - 对 Alamofire sessionmanager 感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40794623/
我正在使用 RxAlamofire 更新我的代码。我用最新版本更新了 RxAlmofire。我如何更新这段代码config.httpAdditionalHeaders = SessionManager
我正在尝试将其他人的代码迁移到 Swift 3。一切都很顺利,除了一行我无法弄清楚。它在 Swift 2.2 中工作正常,但在 Swift 3 中无法编译。它返回错误: Cannot call val
我正在运行 Wildfly 8.1 服务器。我有自己的 SessionManager 实现 io.undertow.server.session.SessionManager。我想配置系统以使用我的
我需要一些帮助。我在尝试使用挂毯 5.3.6、hibernate 4.1.7.Final 和 Mysql 5.1.21 将一些表单数据存储到我的数据库中时遇到此错误 实际上,数据存储在数据库中,但单击
这是我在设置 SessionManager 时尝试更改超时长度的代码: private var defaultSessionManager: Alamofire.SessionManager = {
我是 ZF2 的新手,不太习惯如何做事。我想使用 session 来跟踪用户(记住我)。我在类的一部分中有这段代码: $sessionManager = new \Zend\Session\Sessi
我在谷歌上找到了很多关于这个问题的引用,但没有答案。我正在使用最新版本的 jetty (8.1.2.v20120308),但似乎无法获得能够使用 session 的嵌入式 servlet。该示例当然是
使用 Alamofire 4.0 和 Swift 3.0 可以实现: Alamofire.request("http://content.uplynk.com/player/assetinfo/ab1
ServletContainerSessionManager 不是 ValidatingSessionManager;它是否遵循底层容器来处理孤立清理?这似乎不对。 我认为切换到 DefaultWeb
全部。现在我通过观看《Coding for entreprenus》来学习 iOS 和 swift、alamofire。我使用 swift3 和 alamofire4,但他们教它 alamofire3
所以我正在为我的项目制作一个用于 Alamofire 网络的实用程序类。 我在里面有各种功能,比如: func createAccount() func login() 我想对所有这些功能的请求和响应
我想做什么:我正在将 Spotify SDK 实现到我的 iOS 项目中。我已成功收到 Spotify API 的访问 token ,因为我能够使用所述 API 执行搜索艺术家、搜索歌曲和查看播放列表
请给我建议如何正确设置 Jetty。我使用的是最新版本的 jetty (9.0.6.v20130930)。我订购了服务器实现具体的 servlet,但它不起作用! 我已经与 Jetty 合作过一些,但
当我尝试在 shiro.ini 中设置 session 超时时,我面临另一个问题像这样: securityManager.sessionManager.globalSessionTimeout = 3
为什么我收到此错误,我没有。我已经在使用 Alamofire 5 时将 Alamofire 更改为 AF。请指导有什么问题和需要更改的地方。下面是我收到错误的代码: private func cal
我想在 Cassandra 中检测通过 datastax java 驱动程序执行的查询。扩展 com.datastax.driver.core.SessionManager 是这样吗?另外,如果扩展
在 AFHTTPSessionManager 的子类中,在调用 GET 方法之前,我有以下内容: [self.requestSerializer setValue:userName forHT
所以,我正在使用 Alamofire 发出一些 HTTP 请求,并且我正在尝试使用缓存策略,但服务器的 header 中没有“Cache-Control”标志。所以我想使用 session 管理器添加
几个月来我一直面临这个问题,我已经阅读了几乎所有关于此的信息并实现了大多数解决方案,但仍然没有任何改变。我不知道我在哪里犯了错误。 我正在使用自定义 SessionManager 类在我的 ASP.n
我发现 ZF2 session 和超时有一些奇怪且令人沮丧的行为。 这是我用来设置 session 的代码: $sessionConfig = new \Zend\Session\Config
我是一名优秀的程序员,十分优秀!