1

一切正常,我不知道为什么。这让我害怕。

我最近问了另一个关于 stackoverflow的问题,这让我困惑了好几个小时。你可以在那里阅读问题的详细描述,但我将描述它的要点:

我有一个简单的 iOS 项目,它从一个简单的 rails 服务器请求 JSON 数据。如果我从模拟器运行项目,请求工作正常,但从我的设备运行它时一直失败。

我很快发现了我的第一个问题,使用 localhost 作为我的 AFNetworking 客户端的基本 url,并开始使用我的 IP 地址代替它允许我与服务器通信。

在发出我的 GET 请求时,我可以看到该请求正在访问服务器(通过查看我的终端窗口)并且服务器正在返回一个 200 响应,其中应该包括所请求项目的 JSON 表示。但是AFNetworking -getPath:parameters:success:failure 方法每次都失败。我可以检查响应并查看它的类型为 200,如果我模拟了一个带有 JSON 错误的失败请求(例如 422),我可以看到错误消息。

对我的问题的回复说返回的 JSON 可能无效,这可能导致请求失败。

现在奇怪的部分:

我偶然发现了几个小时,发现了一个使用 Rails 服务器使用 AFNetworking 检索 JSON 响应的项目​​。我将它与我的项目进行了比较,两者在 AFNetworking 方面基本相同。然后我检查了rails服务器。这是踢球者:我能找到的唯一区别是使用了“薄”宝石。我安装了 gem,现在我的请求已成功完成,我正在取回 JSON 数据。

任何人都可以提供关于为什么在我的 Rails 服务器上使用 Thin 而不是 WEBrick 会导致 JSON 数据成功传递回我的设备的任何见解吗?

4

0 回答 0