【问题标题】:iOS. Is it possible to overwrite content of a remote json file or replace it with new?IOS。是否可以覆盖远程 json 文件的内容或用新文件替换它?
【发布时间】:2014-02-06 18:21:18
【问题描述】:

我的服务器上有一个json 文件。如何从 iOS 应用程序更改其内容?我需要写入它或用新文件完全替换该文件。甚至可能吗?谢谢

【问题讨论】:

    标签: ios json networking


    【解决方案1】:

    这并不特定于 iOS,取决于您对“远程文件”的理解。通常,您会使用 HTTP GET 请求下载 JSON 内容。在这种情况下,“反向”操作将是 HTTP PUSH。您需要远程端(Web 服务)来支持此操作。

    【讨论】:

      【解决方案2】:

      您可以使用以下方法之一:

      1- 使用 PHP 通过发送 POST 请求来编辑文件中的数据,其中包含对处理服务器上编辑的 PHP 所做的更改。

      2- 使用 PHP 上传新文件并通过将文件上传到您指定的 PHP 脚本 (this link can help) 替换旧文件。

      3- 使用 FTP 传输新文件并替换旧文件(您可以使用this library 或使用Apple sample)。

      【讨论】:

        【解决方案3】:

        我认为您需要在服务器端使用某种 API。让我通过例子来解释它: 您有一条以 json 格式返回数据的路由(例如列表或项目评论)。例如

        GET domain.com/api/reviews 
        (it returns json file)
        

        之后您处理这些数据并发送请求以将其存储到您的服务器(经常使用相同的 API 路由)

        PUT domain.com/api/reviews 
        (and put new json data inside a request body, fore example in newJsonData = "{....}")
        

        您的脚本(例如 /api/reviews.php)应该支持 2 种请求:GET 和 PUT。如果它得到 GET 请求,它会返回 json 数据。如果是 PUT 则用新数据重写现有的 json 文件。

        阅读有关 REST API 的更多信息:

        REST API iOS development

        Objective-C: Best way to access REST API on your iphone

        一些建议:

        • 如果您在服务器端没有任何类型的身份验证,那么其他人很容易使用相同的请求在服务器上存储危险数据

        • 使用 AFNetworking 库添加 API 支持非常容易:https://github.com/AFNetworking/AFNetworking

        【讨论】:

          猜你喜欢
          • 2021-04-11
          • 1970-01-01
          • 1970-01-01
          • 2021-01-11
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多