ios - 带有希腊语和其他特殊字符的 NSUrl swift 2

标签 ios swift swift2 nsurl

我正在尝试通过以下方式发出服务器请求

NSUrl(string: "http://example.com/α")

其中α是一个希腊字符。所以当我请求这个时,我得到一个错误并且我的应用程序崩溃了。所以我尝试将 url 编码为此

let myUrl = NSURL(string: myLink.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)!)!

现在我的链接变成了http://example.com/%CE%B1

其中 %CE%B1α 字符。尽管我的服务器无法识别它并且不会将数据发回给我。 我将 node.js 与 io.socket 连接一起使用。 swift 有什么方法可以在没有百分比编码的情况下发送正确的 url 吗?

最佳答案

为了在你的 url 中编码 α

let str = "α"
let url = str.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet())

现在像这样解码 url 字符串

let orgStr = url?.stringByRemovingPercentEncoding
print(orgStr)

关于ios - 带有希腊语和其他特殊字符的 NSUrl swift 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38394777/

相关文章:

iphone - 修改 UITableView 的侧边栏?

c - Swift2 @convention(c) 与 char* 和 type**

Swift: Array contains(AnyObject) error Cannot convert type of ... throw -> Bool 错误

ios - swift 使用未解析的标识符'NSURLRequestUseProtocolCachePolicy'

android - 手机间隙 : Force screen orientation portrait/landscape

iOS 画线时用两个箭头和起点终点同时手指触摸终点并从起点或终点旋转

ios - 如何调整自定义 UITableViewCell 的大小以适应内容?

swift - 使用 NSURLSession 通过 Uber API 进行身份验证

swift3 中的 JSONSerialization 错误

swift - 如何仅在执行另一个代码块后才执行一个代码块