问题标签 [afhttpclient]

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 投票
0 回答
301 浏览

ios - 使用 afhttp 时出现 sbjson 错误

你好我得到这个

我添加了所有框架,还为 SBJsonParser 添加了 .m 文件。不工作。我的项目是非弧。

在此处输入图像描述

0 投票
1 回答
561 浏览

objective-c - Carrierwave 如何“图片不能为空” 不允许上传“\”文件?

我越来越

(lldb) po operation.responseString {"errors":{"image":["can't be blank","不允许上传\"\"文件,允许的类型:jpg, jpeg, gif, png" ]}}

上传以使用图像参数以及名称和描述创建一个新组。

我需要更改 Carrierwave 设置,还是我的 obj-c 代码中缺少某些内容?

0 投票
1 回答
148 浏览

iphone - 在后台使用 NSOperationQueue 按时间顺序执行 AFHTTPClient 请求

我有一个 HTTPClient 请求如下:

后台任务执行于:

并结束于:

其中 self.backgroundUpdateTask 是一个UIBackgroundTaskIdentifier对象,而 operationQueue 是NSOperationQueue(公共成员)的一个对象,初始化于viewDidLoad

现在我想要做的是,在后台按时间顺序执行这些请求,这样推送/弹出viewController不会影响请求。如果应用程序进入后台,它也不应该受到影响。有时我发布文本,有时我发布图像。现在,图片的上传时间比文字要长,因此如果后续请求文字和图片,则先发布文字,然后再发布图片。这打破了任务的时间顺序,因此我想使用NSOperationQueue. 但是作为操作队列的新手,我似乎无法使其工作。年表仍然没有得到尊重。我如何以我想要的方式执行任务。

PS。此外,正如您在代码中看到的那样,我已经添加[self endBackgroundUpdateTask]httpClient请求的完成块和 beginBackgroundUpdateTask 方法。现在我明白这不好。endBackgroundUpdateTask 方法到底应该在哪里调用?

谢谢你。

0 投票
2 回答
4272 浏览

objective-c - 在 AFHTTPRequestOperationManager 和 AFHTTPSessionManager 之间进行选择时的建议

由于已经在两位经理的青睐下消失了AFNetworking 2.0:和。迁移指南几乎没有说明哪种情况更适合使用它们。据我所知,与 RESTful 的基本交互可以分别使用它们中的每一个来实现。AFHTTPClientAFHTTPRequestOperationManagerAFHTTPSessionManagerJSON API

最适合使用RequestOperationManageror的情况是SessionManager什么?

0 投票
2 回答
142 浏览

ios - iOS清空请求队列

当您在我的应用程序中创建/更新/删除记录时,它会OutgoingRequest在 Core Data 中创建一个记录。应用程序会定期将这些请求放入队列中,并将它们全部推送到服务器。我使用 AFHTTPClient 帖子(见下文)来做到这一点。我遇到的问题是它一次将所有这些请求向上推送,然后响应以没有真正的顺序返回。

我需要做的是使这些请求“同步”工作,因为在请求 A 完成(成功或失败响应)之前不应发布请求B。这也是在后台完成的,不应挂起 UI。

有没有办法用我目前的设置来实现这一点?或者我应该使用其他方式发布到我的服务器?

谢谢

0 投票
1 回答
849 浏览

c# - 将数据从 ios 应用程序传递到 C# Web 服务

我正在尝试开发这个可以与本地网络下的 C# Web 服务通信的 iOS 应用程序。我正在使用AFNetworking来实现通信。现在我已经在本教程的帮助下实现了从 Web 服务读取 xml 数据,这意味着我的应用程序可以连接到 Web 服务,我想。但我真正想做的是,将数据从应用程序传递到 Web 服务。我写了一些示例代码:

在我构建并运行此应用程序后,它会生成以下错误消息:

在我的 C# Web 服务端,我有 Web 方法,例如:

我是 iOS 开发的新手,我不明白调用此方法时我真正传递给 Web 服务的是什么:

我只是将 NSDictionary 作为参数传递给 C# Web 服务吗?如果是这样,我可以在 Web 服务端使用这个 NSDictionary 做什么?

我不知道这是否是实现将数据传递到 Web 服务的正确方法。我在这里真正想做的是将一些字符串传递给 Web 服务,我该如何实现呢?

我们欢迎所有的建议!

0 投票
3 回答
182 浏览

ios - sharedInstance 中的块和取消

我有一个从互联网下载东西的功能。然后它映射项目并将所有内容返回给控制器。问题是可能有很多项目(facebook 不允许划分它们),我必须在后台映射它们。但是用户已经可以退出控制器,我不知道如何检查我的success()所有者是否仍然存在。

将映射完全放在调度中是否是一个好的解决方案......?

称呼:

在哪里:

方法实现:

0 投票
1 回答
1668 浏览

ios - AFNetworking:使用 IP 地址,应用程序无法访问服务器

当我尝试使用 ip 地址而不是主机名来告诉模拟器中的 ios 应用程序与本地服务器通信时,该应用程序会挂在加载屏幕上,等待来自服务器的响应,但该响应永远不会到来。

我是 Objective C 的新手,但代码使用的是处理请求的 AFNetowrking 框架,并且 SCNetworkReachabilityFlags 属性为 AFHTTPClient 对象上的 IP 地址设置不同。

AFHTTPClient 对象的以下 IP 地址和主机名属性是在调试期间捕获的。

在 AFHTTPClient.m 类的 startMonitoringNetworkReachability 方法中,有以下 if 语句为 IP 地址触发,但我不知道是否是问题所在:

我的问题是导致问题的原因以及如何使用 IP 地址作为 baseURL 连接到服务器?

0 投票
1 回答
1217 浏览

ios - 在 AFJSONRequestOperation 中接受无效的 JSON?

我正在修复现有项目中的错误。问题是 AFHTTPClient 期望一个有效的 JSON 响应,但服务器返回一些像 ""\" Operation complete\"" 之类的乱码(所有引号和括号都在返回中)。这导致操作失败,并命中失败块,因为它无法解析响应。尽管如此,服务器正在返回状态码 200,并且很高兴操作完成。

我有一个像这样扩展 AFHTTPClient 的类(从我的 .h 文件中提取)

在我的实现文件中,类的初始化如下:

我正在拨打的电话是在上面提到的课程中完成的,并且发生如下:

在失败块内,错误对象的 _userInfo 部分中将返回错误,如下所示:

[0] (null) @"NSDebugDescription" : @"JSON 文本没有以数组或对象开头,并且允许未设置片段的选项。"

错误代码是 3480。

从谷歌搜索我收集到我需要设置类似 NSJSONReadingAllowFragments 的东西,但我不确定当前设置的方式/位置。有没有人有任何想法?

0 投票
2 回答
2209 浏览

ios - 使用签名 URL 从 iOS 到 S3 的超时 POSTING

我的服务器正在生成签名上传到 S3 的信息。当我将该信息传递给 iOS 时,它适用于小文件。有时它也适用于更大的,但它经常超时。我目前正在通过 WIFI 在 iOS 7 上进行测试。对于大约 35 MB 的文件,它通常会在大约 60% 后超时,但有时它会完成,有时它会更快地超时。

我的服务器生成以下信息,我将其作为表单部分传递给我的 POST。(我也尝试将其作为具有类似结果的参数):

  • AWSAccessKeyId
  • 内容类型
  • acl(设置为私有)
  • 钥匙
  • 政策
  • 签名
  • 成功操作重定向

以及一个网址。

这是我生成上传的代码:

这会产生以下错误:

更新:

我应该提到几个类似的问题。很多人都遇到 Heroku 超时问题,但我直接上传到 S3。

这个人在上传到他自己的服务器时似乎遇到了同样的问题: -在 iOS 上使用 AFNetworking 上传大文件 - 错误请求超时

这个问题看起来像使用 AWS 库的类似问题,但它们不提供任何代码:

通过 AFNetworking 上传到 Amazon-S3

这个问题似乎是相关的,但是查看源代码,似乎在发布文件时考虑了长度:

https://github.com/AFNetworking/AFNetworking/issues/1510#issuecomment-29687300