iOS - 托管 JSON 文件以使用 URL 解析它 [关闭]

Posted

技术标签:

【中文标题】iOS - 托管 JSON 文件以使用 URL 解析它 [关闭]【英文标题】:iOS - Hosting JSON file to parse it using URL [closed] 【发布时间】:2013-08-29 20:33:18 【问题描述】:

我有一个包含有效数据的 .json 文件。我想在线托管它并在我的应用程序中使用实时网址。我尝试将 json 文件放入下拉框中并尝试验证 http://jsonformatter.curiousconcept.com 站点上的 json 数据,但它显示“JSON 数据 URL 不包含 JSON 数据”还有其他方法可以实现吗?谢谢。

【问题讨论】:

那么,您有有效的 JSON 数据,但有些东西告诉您没有,并且您没有共享 JSON? 您是否生成了共享链接,以便您确实可以通过访问 URL 以纯文本形式访问它 @nil dropbox.com/s/okspzncwy8f5vld/reports.json 您需要共享原始数据 URL,而不是 Dropbox 共享链接。不过,我不知道该怎么做。 只需获取主机并将其放在那里。这不是 Dropbox 的用途。 【参考方案1】:

如果您不想为托管服务提供商付费,或者您只想在付费之前测试您的应用,您仍然可以使用 Dropbox。

为此,您需要将 URL 的 www.dropbox.com 部分替换为 dl.dropboxusercontent.com,如 this Dropbox article 中所述。

我主要将这个答案留给未来,因为这对其他人(包括我)有用。

【讨论】:

【参考方案2】:

这正是我想用http://www.myjson.com 解决的问题 托管 JSON 的简单解决方案。

【讨论】:

确实是非常优雅的解决方案。谢谢兰斯。 这是一种非常不安全的方法。据我了解,任何人都可以修改其他人的 JSON。 myjson.com 是否支持在同一 URL 上编辑 JSON?? @AshishSajwan 我认为没有。使用此链接***.com/a/50667231/1179638【参考方案3】:

好的,所以您想在网络服务器上托管一个静态 JSON 文件,以便 ios 应用程序可以打开并解析它。有几个步骤和轻微的学习曲线,但从我正在阅读的内容来看,这可能会对您有所帮助。

第 1 步:验证您的 JSON 是否有效,因为它看起来有些混乱。在记事本等文本编辑器中打开 JSON。复制粘贴到本站的文本区:

http://jsonlint.com/

如果您遇到解析错误 - 找到该行并进行编辑。如果您无法执行此操作或 JSON 有效 - 请停止并解决此问题。

第 2 步: 虽然您可以使用 Dropbox 来执行此操作,但对于真正的应用程序来说这不是一个好主意。获取网络主机。根据您的基本技能水平,您可以使用 Amazon、Heroku 等云提供商。基于这个问题 - 我推荐一个基本的 ftp 站点。有大量免费/便宜的虚拟主机。

https://www.google.com/search?q=cheap+web+hosting

对于“免费计划”,您唯一需要注意的是它们不会在您的网页中注入广告。 (我在看着你 GoDaddy。)

第 3 步:(假设您有 iOS 应用设置)

将 AFNetworking 添加到您的项目并设置 AFJSONOperation。

http://afnetworking.com/

并使用以下代码:

  NSURL *url = [NSURL URLWithString:@"http://www.foo.com/bar.json"];

  NSURLRequest *request = [NSURLRequest requestWithURL:url];

  AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON)

        NSLog(@"JSON: %@", JSON);


    failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error, id JSON) 

        NSLog(@"error: %@ response: %@", error, response);


    ];

[operation start];

编辑:删除了指向 Dropbox 文章的链接。添加了廉价的虚拟主机选项。

【讨论】:

谢谢。我使用了 x10 网络托管,现在它工作正常。感谢您的详细解释..【参考方案4】:

您可以在此处保存您的 JSON https://quarkbackend.com - 免费 json 托管

此工具可让您管理文件,更新文件后网址不会更改

【讨论】:

你太棒了..【参考方案5】:

除了myjson.com,您可以将它托管在pastebin.com 并使用“Raw”链接访问它。 pastebin.com 相对于 myjson.com 的优势之一是您可以设置过期时间,超过此时间将自动删除。

【讨论】:

【参考方案6】:

投递箱不是解决此问题的理想解决方案。我会使用 S3 或类似的东西。

【讨论】:

这方面有很多很好的资源,这里有一个:chadthompson.me/2013/05/06/static-web-hosting-with-amazon-s3【参考方案7】:

第 1 步:创建一个 GitHub Gist 帐户。

第 2 步:使用您的 JSON 内容创建一个新的 Gist 文件并获取原始 URL

例如: "https://gist.githubusercontent.com/YOUR_ACCOUNT_NAME/0df1fa45aa11753de0a85893448b22de/raw/YourData.txt";

第 3 步:通过在 GET 请求模式下调用 WebService 从您的应用中检索文件内容。

【讨论】:

以上是关于iOS - 托管 JSON 文件以使用 URL 解析它 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

托管 JSON 文件以供第 3 方应用程序/服务使用

在 URL 中传递参数以在 IOS 中返回 json

具有核心数据托管对象的 URL 方案 (iOS)

返回 JSON 响应的 SOAP Web 服务的 URL 格式

放大获取 lambda 中的托管 URL 作为环境变量

通过调用支付宝查询对账单接口返回bill_download_url下载zip,解压缩