Questions tagged «alamofire»

Alamofire是用Swift编写的HTTP网络库。

12
如何从Swift中的Alamofire API解析JSON响应?
按照我编写的代码,我也得到了JSON响应,但是JSON的类型是“ AnyObject”,因此我无法将其转换为Array,以便可以使用它。 Alamofire.request(.POST, "MY URL", parameters:parameters, encoding: .JSON) .responseJSON { (request, response, JSON, error) in println(JSON?) }
125 ios  json  swift  alamofire 

12
迅速。无法构建Objective-C模块“ Alamofire”
使用XCode6并按照T的指示重新安装Alamofire的原始香草子模块。此处的某些内容不合适。我收到的错误是“无法在导入alamofire上构建Objective-C模块“ alamofire”。这是我收到的错误的屏幕截图: 而我的配置:
117 swift  alamofire 

10
Swift Alamofire:如何获取HTTP响应状态代码
我想检索HTTP响应状态代码(例如400、401、403、503等),以获取请求失败(也可以成功获取)。在此代码中,我正在使用HTTP Basic执行用户身份验证,并且希望能够向用户发送消息,告知用户用户输入错误密码时身份验证失败。 Alamofire.request(.GET, "https://host.com/a/path").authenticate(user: "user", password: "typo") .responseString { (req, res, data, error) in if error != nil { println("STRING Error:: error:\(error)") println(" req:\(req)") println(" res:\(res)") println(" data:\(data)") return } println("SUCCESS for String") } .responseJSON { (req, res, data, error) in if error != nil { println("JSON Error:: error:\(error)") println(" …
106 swift  alamofire 

13
如何使用BODY快速发送POST请求
我正在尝试使用Alamofire快速发布尸体的发布请求。 我的json主体看起来像: { "IdQuiz" : 102, "IdUser" : "iosclient", "User" : "iosclient", "List":[ { "IdQuestion" : 5, "IdProposition": 2, "Time" : 32 }, { "IdQuestion" : 4, "IdProposition": 3, "Time" : 9 } ] } 我正在尝试使let listNSDictionnary看起来像: [[Time: 30, IdQuestion: 6510, idProposition: 10], [Time: 30, IdQuestion: 8284, idProposition: 10]] 我使用Alamofire的请求如下所示: …
97 json  swift  put  alamofire 

11
使用Alamofire上传带有参数的文件
我正在尝试使用上传文件Alamofire。使用File(NSUrl)时,上传工作正常,但是,我似乎无法弄清楚如何使用该NSData选项? 这是我的测试: var url:NSURL = NSURL.URLWithString("http://localhost:8080/bike.jpeg") var err: NSError? var imageData :NSData = NSData.dataWithContentsOfURL(url,options: NSDataReadingOptions.DataReadingMappedIfSafe, error: &err) Alamofire.upload(.POST, "http://localhost:8080/rest/service/upload/test.png", imageData) .progress { (bytesWritten, totalBytesWritten, totalBytesExpectedToWrite) in println(totalBytesWritten) } .responseJSON { (request, response, JSON, error) in println(request) println(response) println(JSON) } 我收到状态码415? 另外,如何发送上传中的其他参数? 谢谢 编辑 我没有设置正确的Content-Type: var manager = Manager.sharedInstance manager.session.configuration.HTTPAdditionalHeaders = …
95 ios  swift  alamofire 

20
字符0周围的Alamofire无效值
Alamofire.request(.GET, "url").authenticate(user: "", password: "").responseJSON() { (request, response, json, error) in println(error) println(json) } 这是我对Alamofire的请求,对于某些请求有时可以工作,但是有时我得到: Optional(Error Domain=NSCocoaErrorDomain Code=3840 "The operation couldn’t be completed. (Cocoa error 3840.)" (Invalid value around character 0.) UserInfo=0x78e74b80 {NSDebugDescription=Invalid value around character 0.}) 我已经读到这可能是由于无效的JSON引起的,但是响应是我在JSON验证程序中验证为有效的静态JSON字符串。它确实包含åö字符和一些HTML。 为什么有时会出现此错误?
93 ios  swift  alamofire 

21
Cocoapods +无法加载“ x”的基础模块
我正在运行XCode 7,Swift 2.0,iOS 9。 我想使用Cocoapods在我的项目中安装Alamofire。我已经完成以下工作: gem install cocoapods pod setup pod init Podfile更新为: # Uncomment this line to define a global platform for your project # platform :ios, '9.0' use_frameworks! target 'JSONeg' do pod 'Alamofire', :branch => 'swift-2' end 然后我安装了吊舱: pod install 并将以下内容添加到ViewController.swift import Alamofire 这将引发以下错误: Cannot load underlying module …

13
IPv6应用商店拒绝
由于ipv6网络连接问题,我们的更新今天两次被拒绝。在先前版本和当前版本之间,我们的网络代码未更改。 该应用仅向api.metooapp.io发出https网络请求,该网络已为ipv6 [ 0 ] 正确配置,并在AWS上的route53后面运行。代码中没有硬编码的IP地址。 即使按照在[ 1 ] 处创建ipv6网络的步骤进行操作,我也无法重现此问题,这是拒绝通知中提供的链接。看来我并不是唯一一个遇到此问题的人[ 2 ]。

12
带有Alamofire正文的简单字符串的POST请求
在iOS应用中,如何使用Alamofire在HTTP正文中使用简单字符串发送POST请求? 默认情况下,Alamofire需要用于请求的参数: Alamofire.request(.POST, "http://mywebsite.com/post-request", parameters: ["foo": "bar"]) 这些参数包含键值对。但是我不想在HTTP正文中发送带有键值字符串的请求。 我的意思是这样的: Alamofire.request(.POST, "http://mywebsite.com/post-request", body: "myBodyString")
84 ios  http  swift  request  alamofire 

3
AlamoFire异步完成JSON请求处理程序
使用AlamoFire框架后,我注意到,completionHandler在主线程上运行。我想知道下面的代码是否是在完成处理程序中创建Core Data导入任务的好习惯: Alamofire.request(.GET, "http://myWebSite.com", parameters: parameters) .responseJSON(options: .MutableContainers) { (_, _, JSON, error) -> Void in dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), { () -> Void in if let err = error{ println("Error:\(error)") return; } if let jsonArray = JSON as? [NSArray]{ let importer = CDImporter(incomingArray: jsonArray entity: "Artist", map: artistEntityMap); } }); }
80 swift  alamofire 

5
正确使用Alamofire的URLRequestConvertible
我读过一些教程,@ mattt的自述文件,但无法弄清楚几件事。 URLRequestConvertible现实世界中API的正确用法是什么?好像我将通过URLRequestConvertible为所有API实现协议来创建一个路由器一样,几乎无法读取。我应该为每个端点创建一个路由器吗? 第二个问题很可能是由于缺乏Swift语言经验引起的。我不知道为什么enum要用来建造路由器?为什么我们不将类与静态方法一起使用?这是一个示例(来自Alamofire的自述文件) enum Router: URLRequestConvertible { static let baseURLString = "http://example.com" static let perPage = 50 case Search(query: String, page: Int) // MARK: URLRequestConvertible var URLRequest: NSURLRequest { let (path: String, parameters: [String: AnyObject]?) = { switch self { case .Search(let query, let page) where page > 1: …
78 ios  swift  alamofire 

1
NSURLSession与Alamofire并发请求
我的测试应用程序遇到一些奇怪的行为。我有大约50个同时发送到同一服务器的GET请求。该服务器是资源有限的一小部分硬件上的嵌入式服务器。为了优化每个单个请求的性能,我将Alamofire.Manager如下配置一个实例: let configuration = NSURLSessionConfiguration.defaultSessionConfiguration() configuration.HTTPMaximumConnectionsPerHost = 2 configuration.timeoutIntervalForRequest = 30 let manager = Alamofire.Manager(configuration: configuration) 当我发送请求时,manager.request(...)它们以2对的形式分派(按预期,通过Charles HTTP Proxy检查)。但是,很奇怪的是,由于第一个请求在30秒之内没有完成的所有请求,都会因为同时超时而被取消(即使尚未发送)。这是展示行为的例证: 这是预期的行为吗?如何确保请求在发送之前不会超时? 非常感谢!
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.