ios - 如何在没有反斜杠的情况下转义整个字符串?

标签 ios swift api strongloop

我这里有这个字符串:

let toEscape = "http://localhost:3000/api/Tests/update?where={ \"name\": \(updateText) }"

这个字符串通常没问题,除了我连接的 API 软件 (Strongloop) 似乎不喜欢\"name\"处的反斜杠。如何转义整个字符串,这样我就不必在引号前加上反斜杠?在 C# 中,您可以在字符串的开头使用 @ 符号,据说您可以在 Objective-C 中执行相同的操作,但我无法在 Swift 中执行此操作,至少目前还不能。

最佳答案

一个可能的解决方案是使用 NSURL(scheme:host:path:) 创建一个 NSURL 并调用 absoluteString() 方法

let escapedString = NSURL(scheme: "http", host: "localhost:3000", path: "/api/Tests/update?where={ \"name\": \(updateText) }")?.absoluteString

编辑:

或者更简单

let escapedString = toEscape.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)

关于ios - 如何在没有反斜杠的情况下转义整个字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31089663/

相关文章:

ios - 将 AKAudioFile 拆分为由静音分隔的 block

api - 我该如何使用MindMeister API的 "Personal access tokens"?

ios - 如何使用 iOS Masonry(自动布局)将两个按钮放置在彼此旁边

ios - UIScrollView 的 subview 保持在同一位置,而 UIScrollView 垂直滚动

ios UIView 没有初始化调用

http - 在 REST API 中处理标志和属性的选项有哪些?

python - 从 API 获取数据并解析

ios - 在分离的线程问题中带有 block 的异步 FB 请求

ios - 从外部类管理 UIPickerView - 使用 Swift

ios - 条形按钮项目未在 SWIFT 中显示