2013-11-29 1 views
19

Если я запускаю этот запрос от моего терминала я могу увидеть запросы в формате JSON, как обычно:Неподдерживаемое URL в NSURLRequest

curl -XGET 192.168.0.6:8888/scripts/data/backend2/index.php/name/_all 

Мой код NSURlRequest заключается в следующем:

NSURLRequest *request = [NSURLRequest requestWithURL: 
          [NSURL URLWithString:@"192.168.0.6:8888/scripts/data/backend2/index.php/name/_all"]]; 

    [[NSURLConnection alloc] initWithRequest:request delegate:self]; 

И я получаю эта ошибка:

didFailWithError 
2013-11-29 22:31:08.164 Ski Greece[607:a0b] Connection failed: Error Domain=NSURLErrorDomain Code=-1002 "unsupported URL" UserInfo=0xcd042d0 {NSErrorFailingURLStringKey=192.168.0.6:8888/scripts/data/backend2/index.php/name/_all, NSErrorFailingURLKey=192.168.0.6:8888/scripts/data/backend2/index.php/name/_all, NSLocalizedDescription=unsupported URL, NSUnderlyingError=0xdbdcc70 "unsupported URL"} 

Как я могу позвонить по этому адресу? Я не могу получить доступ к серверному коду - я знаю, что это просто настройка, чтобы вернуть мне то, что мне нужно, если я позвоню этому URL-адресу?

+17

Попробуйте добавить 'http: //' в начало URL-адреса. – rmaddy

+0

Добавьте «http: //» и повторите попытку? Кроме того, вы запрашиваете порт таким образом или через URL-запрос (я не уверен сам). –

+0

Согласовано. Без «http: //» (или другого префикса URL) это не URL-адрес вообще. – russellm

ответ

38

Попробуйте включить соответствующую схему URL-адресов на ваш URL-адрес, например.

[NSURL URLWithString:@"http://www...

+7

У меня есть URL, начинающийся с http: // ... и я до сих пор получаю сообщение об ошибке. Кто-нибудь знает, что еще может вызвать это? – dan

8

я тоже боролся за ту же ошибку, даже если путь URL был правильным, но там было пространство в нем, прежде, чем HTTP, как показано ниже:

NSString *path = @" http://www.mylink/"; 
NSURL *url = [NSURL URLWithString:path]; 

так что я получаю URL-адрес как ноль, и поэтому он давал «неподдерживаемый URL». затем, удалив пространство для меня.

+0

Человек очень благодарен вам, мой URL-адрес имел место в конце. – dan

+0

Большое спасибо, вы сэкономли день – Sakthimuthiah

+0

, пожалуйста, если это поможет вам, ребята, можете ли вы оценить мой ответ? – keshav

0

Как указано выше, пробел в URL-адресе может вызвать это, но также возможно, что ваша строка содержит неподдерживаемый символ. Например, если вы копируете и вставляете URL-адрес из PDF, Word или другого документа, он может содержать неподдерживаемые символы. Для глаз это выглядит отлично, но не компилятор.

Чтобы исправить это, в вашем методе [NSURL URLWithString:@"http://blabhblabh"], удалите всю строку кода, а не только URL-адрес, и повторно введите ссылку и способ вручную.

2

В моем случае пробелы добавляются в мой URL. Я удалил пробелы и запустил. Убедитесь, что вы не добавили никаких пробелов в свой URL, даже когда вы передаете параметры. Надеюсь, это поможет кому-то.

15

В моем случае я установил его с этим:

strURL = [strURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 

strURL содержит строку с URL.

+0

Он отлично работает. – Vishnuvardhan

0

В моем случае я передавал развернутый дополнительный вариант в Swift. После того, как я развернул необязательную строку, URL был принят правильно.

6

В моем случае, когда я посещаю сервис работает на моем Mac, так что мой URL является 127.0.0.1:8080/list

После того как я добавить HTTP: // схемы. Оно работает!

Теперь http://127.0.0.1:8080/list вместо 127.0.0.1:8080/list

1

кажется его искаженный URL или это не является допустимым URL вообще, попробуйте ударить этот адрес в браузере, я думаю, вы не получите любой результат. Код ошибки = -1002 возникает, когда URL-адрес не поддерживается.

 Смежные вопросы

  • Нет связанных вопросов^_^