2015-09-08 3 views
0

Я пытаюсь получить HTML веб-страницы с этим кодом:Загрузка HTML Content

let url = NSURL(string: "http://www.handasaim.co.il/news.asp") 

let task = NSURLSession.sharedSession().dataTaskWithURL(url!) { 
    (data, response, error) in 
    if error == nil { 
     var urlContent = NSString(data: data, encoding: NSUTF8StringEncoding) 
     println(urlContent) 
    } 
} 

task.resume() 

Я думаю, что проблема в том, что URL окончание .asp, потому что, когда я пытался сделать это с другой URL это сработало.

В чем проблема?

+0

Что говорит об ошибке? – Leonardo

+0

Нет ошибки, она просто дает нуль – OmerN

ответ

0

Веб-страница, которую вы указали, не использует кодировку UTF8. Если вы укажете правильную кодировку при попытке создания NSString из данных - она ​​будет работать.

var urlContent = NSString(data: data, encoding: NSASCIIStringEncoding) 
+0

Чтобы исправить это: 1. Возьмите свойство textEncodingName объекта ответа, чтобы получить имя правильной текстовой кодировки. 2. Вызвать функцию CFStringConvertIANACharSetNameToEncoding для преобразования этой строки в кодировку CFString. 3. Вызвать функцию CFStringConvertEncodingToNSStringEncoding, чтобы преобразовать кодировку CFString в кодировку NSString. 4. Передайте это как параметр кодирования при создании строки. – dgatwood