Я сделал JSON-запрос, чтобы получить предложения по поиску в Google на Google, если я передаю арабские буквы в качестве поискового ключевого слова, то это прекрасно работает, если язык устройства английский, но если я изменяю его на арабский, я получаю это сообщение:
Не удалось сериализовать JSON из-за ошибки: невозможно прочитать данные, поскольку они имеют неправильный формат.
Код:
//Prepare Keyword string
searchKeyword = (searchKeyword as NSString).replacingOccurrences(of: " ", with: "+")
//Prepare url string
var str: String = "http://suggestqueries.google.com/complete/search?ds=yt&client=firefox&hjson=t&q='\(searchKeyword)'"
str = str.addingPercentEncoding(withAllowedCharacters: NSCharacterSet.urlQueryAllowed)!
//Getting the data
Alamofire.request(str).responseJSON { (response) in
//If error
if let error = response.error {
print(error.localizedDescription)
}
//If successed
if let jsonArray = response.result.value as? NSArray {
//Use the data
}
}
Примечание: когда устройство имеет интерфейс на английском языке, я получил Content-Type = charset = ISO-8859-1 в описании ответа JSON, но когда устройство работает на арабском интерфейсе Content-Type = charset = windows-1256