URL编码API请求的Textfield文本

时间:2015-01-03 01:46:45

标签: ios swift

我正在使用Swift编写我的第一个iOS应用程序。尝试从自定义API请求并且文本字段值不是URL编码的是失败的。我试过了

var search_term = search.text;    
var encoded_term = search_term.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLHostAllowedCharacterSet())

但是当与API url连接时,这会失败,说一个字符串和uINT8无法连接。

以下是这两行之后的其余代码。

var request : NSMutableURLRequest = NSMutableURLRequest(); 
request.URL = NSURL(string: url); request.HTTPMethod = "GET";       
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue(),   
completionHandler:{ (response:NSURLResponse!, data: NSData!, error: NSError!) -> Void in    
   println(response); 
   println(error);

1 个答案:

答案 0 :(得分:1)

var url : String = "http://myAPI.com?q=";    
var search_term = search.text;    
var encoded_term = search_term.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLHostAllowedCharacterSet())
url = url + encoded_term!;

这允许连接完成并与上述功能一起使用。