草庐IT

Alamofire-SwiftyJSON

全部标签

swift - 在使用 SwiftyJSON 和 Alamofire 从 API 返回数据之前渲染 UITableView

当我在viewDidLoad()中调用callapi()函数时,callapi中的println()会打印其中包含Post对象的posts数组,但是viewDidLoad()函数中的println()会打印一个空数组。此外,当我构建项目时,我收到此错误“fatalerror:数组索引超出范围”。tableView函数中的println()语句也打印一个空数组。表格似乎在来自API的数据到达之前就已呈现,我该如何解决这个问题?varposts=[Post]()overridefuncviewDidLoad(){super.viewDidLoad()callapi()println(sel

ios - Alamofire multipartFormData 上传不发送数据

我正在尝试使用Alamofire上传图像,但服务器未获取图像。这是我上传的代码:Alamofire.upload(Router.UpdateUserAvatar,multipartFormData:{(multipartFormData)->VoidinletcompressionQuality:CGFloat=0.8guardletimageData=UIImageJPEGRepresentation(image,compressionQuality)else{print("UnabletogetJPEGrepresentationforimage\(image)")callComp

json - 使用 Alamofire 4 解析嵌套的 JSON

所以我一整天都在尝试使用Alomofire4从我的WordPressRESTAPI解析JSON,我已经尝试了所有我能找到的与我的问题相关的东西,但我仍然无法解决我的问题。目标只是从API发出请求并将其打印出来,从那里我可以管理,但由于JSON似乎有嵌套数组/字典,我很难弄清楚要使用什么。我的代码:Alamofire.request(_newsURL).responseJSON{responseinprint(response.result)ifletjson=response.result.valueas?[Any]{print("JSON:\(json)")}ifletdict=re

ios - 如何在 Alamofire Post 请求后有一个完成处理程序/ block ?

我有一个方法可以处理ApplePushNotificationService远程通知。执行此方法时,我希望它调用我的服务器并使用Alamofire库执行HTTPPOST请求。我想执行另一个方法来处理POST请求的响应。我的问题是我正在使用现有的API在此POST请求中从服务器获取配置文件。所以我需要使用这个现有的API并确定何时从远程通知中专门触发此配置文件获取。由于Alamofire请求是在后台队列中完成的,我该如何在收到服务器返回的配置文件后执行方法?什么是解决这个问题的好选择?谢谢! 最佳答案 SinceAlamofirere

swift - 通过 Swift 3 包管理器添加 Alamofire 作为依赖项

Swift3引入了包管理器,我可以使用它向我的项目添加依赖项。例如,在我的Package.swift中,我可以通过以下方式声明我的依赖关系:importPackageDescriptionletpackage=Package(name:"my-project",dependencies:[.Package(url:"https://github.com/vapor/vapor.git",majorVersion:0,minor:16),])现在,我需要添加Alamofire到我的项目,如何通过Swift3包管理器获取它? 最佳答案

ios - Alamofire 上传巨大的文件

我正在使用Alamofire将Assets(图像/视频)作为多部分表单数据上传。它适用于300MB以下的文件大小(应用程序)。当我尝试上传大于300MB的文件时,应用程序崩溃了。ifletvideo=self.avPlayerItem?.assetas?AVURLAsset{ifletassetData=NSData(contentsOfURL:video.URL){multipartFormData.appendBodyPart(data:assetData,name:"file",fileName:"video",mimeType:"video/mp4")//Executionst

swift - 使用 Alamofire 上传多部分表单数据文件

我已经查看了this或that之类的问题,但它仍然无法正常工作。还有一个问题,我应该从函数multipartFormData.appendBodyPart中输入什么到fileURL参数?应该是从PC获取图片的方式,还是图片必须添加到Images.xcassets?我应该在这里发送什么? 最佳答案 看起来您需要解决三个问题。使用.POST代替POST。fileURL必须是指向文件系统上文件的有效NSURL。您不能只使用文件名。您正在使用responseString序列化程序,但在闭包中将第三个参数命名为JSON。然后你让result进

ios - 为测试创建 Alamofire 响应

我在我的iOS应用程序中使用Alamofire进行API调用。我试图在测试中stub这些数据,我已经尝试过Mockingjay和OHHTTPStubs但都不起作用,所以我现在试图stub我收到的响应。我需要创建一个包含虚拟数据的响应,我可以将其传递给我的其他方法。下面是Alamofire中Response对象的初始化器:publicinit(request:NSURLRequest?,response:NSHTTPURLResponse?,data:NSData?,result:Result)但是我不知道如何创建这个对象,因为我无法创建结果。以下是Alamofire的一些结果类:pub

swift - 将 SwiftyJSON 映射到数组

letjson=JSON(response.result.value!)letthings=json.array.map{jsonThinginThing()}!json.array返回一个包含一百个JSON的数组。在调用map之后,我最终得到一个Thing。为什么我没有新的Thing数组? 最佳答案 SwiftyJSON有两种getter:可选的和非可选的。非可选的getter具有“...Value”名称语法。可选:json.array非可选:json.arrayValue不过要小心:如果您使用带有nil值的非可选getter,它

ios - 无法存档 Xcode 项目,错误没有这样的模块 'Alamofire'

我通过cocoapods成功安装了Alamofire,并在通过Xcode在设备上构建和运行应用程序时一直在使用它。现在,当我去存档我的项目以供分发时,我收到错误:Nosuchmodule'Alamofire'我将我的供应配置文件切换到我一直用于分发的正确的AdHoc配置文件,但是由于我切换到使用cocoapods而不是手动安装Alamofire,我一直无法存档。我尝试通过在build设置下将“BuildActiveArchitectureOnly”设置为“No”来修复,但没有成功。 最佳答案 之间有可能版本不匹配和你项目的podgl