【问题标题】:Swift 3 - Alamofire request - Save request to diskSwift 3 - Alamofire 请求 - 将请求保存到磁盘
【发布时间】:2018-02-26 07:05:19
【问题描述】:

我问这个问题是因为我没有找到任何关于这个问题的资源,因此我无法完成我的项目。

我有这个基本的 alamofire 发布请求:

let request = Alamofire.request("https://httpbin.org/post", method: .post, parameters: parameters, encoding: JSONEncoding.default)

如果我没有连接到互联网,我想保存这个请求,然后在互联网连接时再次执行。

关于如何着手解决这个问题有什么想法吗?任何建议将不胜感激。

【问题讨论】:

  • 我可能遗漏了一些东西,但您肯定需要做的就是管理一个 JSON 格式的文本文件,该文件存储您无法立即执行的任何未完成请求的参数。恢复连接后,从文件中读取请求参数以创建请求,并删除成功执行的条目。
  • 我应该如何将快速“变量”保存到文本文件中?
  • 查看关于 JSONSerialization 的 Apple 文档:developer.apple.com/documentation/foundation/jsonserialization。您实际上希望将 JSON 转换为 Data 对象,然后您可以将其写入文件并稍后读回。但也请查看与我的评论交叉的已发布答案。

标签: swift serialization swift3 request alamofire


【解决方案1】:
  1. 借助this answer判断是否有工作 互联网连接与否。

  2. 没有互联网连接的情况
    将您的帖子参数保存在您的用户默认值或file

  3. 关注此answer 以了解 iphone 何时再次出现 已连接到互联网。

  4. 在步骤 2 中链接的答案的帮助下,从 归档并发出发布请求

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-15
    • 1970-01-01
    相关资源
    最近更新 更多