【问题标题】:Found nil NSURL POSt request Swift [duplicate]发现 nil NSURL POST 请求 Swift [重复]
【发布时间】:2016-03-22 01:05:24
【问题描述】:

在我的 POST 请求中,我的 URL 抛出“在展开可选值时意外发现 nil”错误。这是它的样子:

    let imageUrl = NSURL(string: "http://88.143.30.77/app_backend/public/api/v1/image?_r={rec_id}")!
    let request = NSMutableURLRequest(URL: imageUrl)
    request.HTTPMethod = "POST"

如果我删除 URL 中的“?_r={rec_id}”部分,错误就会消失,但我不知道如何修复它,因为这是我需要将图像发送到的 URL。 非常感谢任何帮助!

【问题讨论】:

  • 该 URL 无效,因为它不能包含 {}。您必须先对查询参数进行编码。

标签: swift post


【解决方案1】:

我怀疑{rec_id} 应该替换为实际值。你应该有这样的东西:

let imageUrl = NSURL(string: "http://88.143.30.77/app_backend/public/api/v1/image?_r=123456")!
let request = NSMutableURLRequest(URL: imageUrl)
request.HTTPMethod = "POST"

文档通常使用尖括号或花括号来指示值应插入的位置。尖括号或花括号本身以及占位符值将被替换。

【讨论】:

  • 您应该告诉 OP 如何插入字符串,例如 "\(myValue)"
【解决方案2】:

我在这里找到了解决方法:NSURL found nil while unwraping an Optional value

我需要对整个字符串进行编码

【讨论】:

  • rec_id 不是您需要放入 URL 的值吗?
  • 也帮自己一个忙,使用if letguard 处理其他潜在的nil NSURL 返回值而不是再次崩溃。
猜你喜欢
  • 1970-01-01
  • 2019-10-15
  • 2020-05-17
  • 2017-04-07
  • 2018-09-10
  • 2023-03-21
  • 2015-12-28
  • 2016-11-16
  • 2018-03-26
相关资源
最近更新 更多