2011-11-15 3 views
2

J'ai une cette URL et je ne peux pas sembler obtenir le code ci-dessous pour travaillerNSURL avec le codage

Dans ce code urlToGrab = http://192.1.1.233:8000/en-US/app/search/flashtimeline?auto_pause=true&q=search%20host%3D%22JRVIN-LT%22

NSURL *url = [NSURL URLWithString:urlToGrab]; 
[webView loadRequest:[NSURLRequest requestWithURL:url]]; 

Ce code ne fonctionne pas. Lors de la définition des points d'arrêt, l'URL est nulle. Si j'utilise "http://192.1.1.233:8000/en-US/app/search/flashtimeline?auto_pause=true & q =" cela fonctionnera.

+0

Qu'est-ce URLToGrab ressembler? – CodaFi

+0

Bonjour igervin ... j'ai écrit comme ci-dessous le code .... mais je ne reçois pas de null –

Répondre

3

Vous devez d'abord décoder l'URL de la chaîne. Exemple:

NSString * urlToGrab = [[@"http://192.1.1.233:8000/en-US/app/search/flashtimeline?auto_pause=true&q=search%20host%3D%22JRVIN-LT%22" 
    stringByReplacingOccurrencesOfString:@"+" withString:@" "] 
    stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 

NSURL *url = [NSURL URLWithString:urlToGrab]; 
[webView loadRequest:[NSURLRequest requestWithURL:url]]; 

Remplacement « + » avec « » est juste au cas où vous avez une autre URL encodée qui contient « + ».

1

je l'ai écrit comme ci-dessous le code .... mais je did't obtenir null

NSString *str=[[NSString alloc] initWithString:@"http://192.1.1.233:8000/en-US/app/search/flashtimeline?auto_pause=true&q=search%20host%3D%22JRVIN-LT%22"]; 
NSURL *url = [NSURL URLWithString:str]; 
+1

La question n'est pas si OP obtient null ou non. Btw il n'y a rien appelé null en Objective-C, c'est nul. La question est pourquoi le WebView ne charge pas l'URL correctement. – Dimme

0

devrait être:

NSString * urlToGrab = [[@"yourURL" 
stringByReplacingOccurrencesOfString:@"+" withString:@" "] 
stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 

pas "stringByReplacingPercentEscapesUsingEncoding"