问题标签 [afnetworking]

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 投票
2 回答
9862 浏览

objective-c - AFNetworking:带有应用程序/x-www-form-urlencoded 的 POST 请求

我正在学习使用AFNetworking.

我知道我可以用AFHTTPClientjson 发出 POST 请求。

我的问题是:有没有办法发出标准的 POST 请求(即内容类型为application/x-www-form-urlencoded)?我的服务器后端不接受 json,因为客户端应该使用相同的表单通过 web 登录。

过去我使用过ASIHTTPRequest并且我使用过这段代码:

谢谢!

0 投票
4 回答
1960 浏览

objective-c - 如何在 iOS ViewControllers 中处理异步进程?

我目前正在开发一个应用程序,它允许用户使用 HTTP 请求(JSON 格式)对远程服务器进行身份验证。

我创建了一个单独的类来处理 API 请求,因为我将在整个应用程序中做很多事情。

APIRequest 中最神奇的方法是:

在我的控制器中,当按下按钮时,我调用:

我似乎无法解决的是如何通知控制器请求已完成。

我在 APIRequest 上有一个名为 isLoading 的属性,只要请求仍在发生,它将为“YES”。所以,我知道我可以通过询问来检查 api_request 是否完成。

我想不出控制器会在几秒钟后响应任何事件,以便询问 api_request 是否完成。

任何人都可以在这里提出一个好的方法吗?

0 投票
1 回答
96 浏览

cocoa-touch - 图片下载开销

我的应用程序有一个 UITableView。它的细胞使用 AFNetworking 从 tumblr 下载图片。这确实有效,但我注意到,一旦我开始下载图片,我的应用程序就需要多 5 MB 的内存。我首先认为这是泄漏,但是,我的应用程序没有泄漏。因此,我检查了 instagram 等的内存使用情况,并注意到它们也需要更多内存,一旦我开始下载帖子。

所以我想知道为什么下载图像需要这么大的开销?还是我完全错了,我的应用程序不工作?

0 投票
2 回答
3805 浏览

singleton - 如何使用 AFHTTPRequestOperation 更新 MBProgressHud

我下载了一些例子来学习 Ios。

示例包括:

  • AF网络;
  • 应用内购买(来自 RayW);
  • MBProgressHud;

在我的视图控制器中,我按下一个触发 Inapp 购买单例示例的 UI 按钮,并开始使用 AFHTTPRequestOperation 从我的服务器下载文件。这部分通信有效。但我想要实现的是在下载时更新我的​​ hud。由于文件> 10Mb。

所以,问题是我如何用下载进度更新 hud?我试着把它画下来。

  • 我按下 Viewcontroller 中的按钮,就会显示 hud;

    • --> 请求将发送到处理网络部分的 Singleton InApp 助手类;

      • --> 之后会在单例类中调用AFHTTPRequestOperation来下载文件;

        • ---> 在此下载过程中,我使用 setDownloadProgressBlock 方法来获取进度。

但是我如何将进度信息发送回视图控制器中的 hud?

谢谢。

0 投票
2 回答
3113 浏览

objective-c - afnetworking - startMonitoringNetworkReachability 中的 exc_bad_access

对于一个项目,我必须使用 AFNetworking。从 github 获得了新副本,iOS 示例项目似乎正在运行。

但是 - 当我将“AFNetworking”文件夹复制到一个新的 Xcode 项目并尝试进行 http 调用时,它在 AFHTTPClient 的初始化程序中崩溃

所以在 [AFHTTPClient initWithBaseURL:] 中有这样的代码:

它看起来很愚蠢但是

1)当我不链接 SystemConfiguration - 项目不编译

(架构 i386 的未定义符号:“_SCNetworkReachabilityCreateWithName”,引用自:AFHTTPClient.o 中的 -[AFHTTPClient startMonitoringNetworkReachability])

2) 当我链接 SystemConfiguration - 项目在运行时在 startMonitoringNetworkReachability 内使用 EXC_BAD_ACCESS 崩溃:

有人遇到过这个问题吗?从他们在 github 上称赞他们的 lib 的方式来看,我认为它会更加精致。

0 投票
1 回答
3942 浏览

objective-c - AFNetworking 发布请求未通过 Sinatra 应用程序

我正在尝试使用我制作的 Sinatra API 从我的 iPhone 发布请求。目前我所有的 Sinatra 应用程序正在做的就是打印发送给它的请求。这是代码:

我的objective-c也很简单。它所做的只是向我的 API 发送一个 post 请求:

当 JSON(在 obj-c 的第 3 行)是一个非常短的字符串时,例如 @"test",Sinatra 会像这样正确地打印出来:

当我使用实际的 JSON 配置文件数据时,它是一个非常长的 JSON blob,Sinatra 将其打印出来如下:

我无法弄清楚为什么长斑点会通过。我 100% 确定我传递了正确的字符串,但 Sinatra 没有收到它。我目前的理论是 Sinatra 对请求有最大字符限制,但我是 Sinatra 和 Ruby 的新手,我不知道如何测试它。出了什么问题?

更新:

首先,感谢 Kjuly 的建议。我发现我在 Sinatra 的字符限制上错了。在 obj-c 中,我正在记录第 3 行具有 JSON blob 的字典,并且它具有 json blob。但是,当我在第 4 行记录 NSMutableURLRequest 的正文时,正文为空。当我使用我的小 JSON blob 时,主体已被填满。

NSMutableURLRequest 有字符限制吗?谁能想到为什么它不接受我的带有大 JSON blob 的非常大的字典,但不接受小字典的原因。

谢谢!

再次更新:

请求正文现在可以正确填写。我不得不将此行添加到第 3 行:

现在我在 Sinatra 的 HTTPResponse 中得到这个响应:

Sinatra 现在只是打印

而不是 {"json"=>"(null)"}

仍然不确定发生了什么。

更新 3

好的,我认为来自 Sinatra 的 HTTPResponse(文本/json 内容)是因为我在 AFNetworking 中从 Sinatra 返回了一个文本/html。我现在检查了 Sinatra 正在接收的主体,我的巨大 JSON blob 在那里。但是,“params”仍然是空的。

有人知道为什么吗?

解决它

看起来当您将 JSON 发布到 sinatra 时,您必须直接阅读请求的正文。在 Sinatra 中,您可以这样做:

profile = JSON.parse(request.body.read.to_s)

然后 profile 是您解析的对象。

0 投票
1 回答
5078 浏览

iphone - 在 IOS 上使用 AFNetworking 流式传输 JSON

使用 AFNetworking 从流式 JSON API 接收数据的最优雅方式是什么?AFNetworking 为从 JSON API 接收非流式数据提供了出色的支持,但我找不到任何流式 JSON 的示例。

0 投票
3 回答
1335 浏览

objective-c - 如何从 AFNetworking 和 AFJSONRequestOperation 获取可变字典?

我正在将 JSONKit 与 AFNetworking 的 AFHTTPClient(带有 AFJSONRequestOperation)一起使用,我似乎无法弄清楚如何触发使用 JSONKit 的 mutableObjectFrom... 方法,而不是返回(或数组)JKDictionary 的普通解析器方法.

在不修改 AFNetworking 的情况下这可能吗?

0 投票
1 回答
7270 浏览

iphone - AFNetworking (AFJSONRequestOperation) 转换为 AFHTTPClient

我的以下代码运行良好,但我需要对其进行更多控制,尤其需要开始使用 0.9 中的可达性代码。

我正在努力研究如何将相同的代码转换为使用 AFHTTPClient,以便我可以利用“setReachabilityStatusChangeBlock”。

0 投票
5 回答
6979 浏览

ios - 显示 AFNetworking+UIImageView 占位符图像,但不显示 URL 图像

我正在尝试使用 AFNetworking UIImageView 调用从 URL 加载图像,如下所示:

占位符图像始终显示,但来自“feed.imageURL”的实际图像永远不会出现。我已验证该 URL 实际上是正确的。我什至硬编码它以确保,但仍然没有。

我的基本应用程序设置是一个选项卡控制器……在 viewDidLoad 中,我调用了一个方法“fetchFeed”,它执行 HTTP 请求以收集我的 JSON 数据。

我的请求块看起来像: