2016-08-03 48 views
1

我的应用中有一个WKWebView,允许用户在Google上进行搜索。无法在WKWebView上使用“&”字符进行谷歌搜索

一切工作正常,但用“&”字符搜索。例如,如果我搜索在& t,我将有搜索的结果。

如果我打印didCommitNavigation我的web视图的URL,我可以看到正确的搜索术语在&牛逼

func webView(webView: WKWebView, didCommitNavigation navigation: WKNavigation!) 
{ 
     print(webView.URL?.absoluteString) 
} 

回报

https://www.google.fr/search?hl=en&q=at&t=&gws_rd=cr,ssl&ei=8f-hV4iJGM-ba6qvh-gJ

我们可以看到q参数:q=at&t而结果lt页面与q=at相同。

任何想法来解决这个问题,将不胜感激。

回答

1

由于this验证,该&不会自动以通常的方式逃脱了,所以你可能需要手动处理您的搜索字符串(无论你的用户输入的条件,只需更换&当你从那里得到它):

let searchterm = getTermFromWherever() 
let actualterm = searchterm.stringByReplacingOccurrencesOfString("&", withString: "%26") 

这应该工作。

+0

是的,这很有用,非常感谢! – Randy

+0

不客气。 :) – Gero