2013-07-13 2 views
0

J'ai un UISearchBar à partir duquel j'extrais le texte qui représente une adresse et en construit une URL JSON pour Google Geocoder.Création de NSURL avec le paramètre de requête personnalisé renvoie

NSString* address = searchbar.text; 
NSString* url = [NSString stringWithFormat:@"http://maps.google.com/maps/api/geocode/json?address=%@&sensor=false", address]; 

Si je copier & coller l'URL de la fenêtre de débogage dans le navigateur, il fonctionne comme un charme, mais lorsque je tente de le convertir en NSURL i get nil

NSURL* theUrl = [NSURL URLWithString:url]; 

Toutes les idées?

+0

Votre URL semble bien, essayez d'utiliser NSMutableRequest et changer les en-têtes HTTP avec un agent d'utilisateur différent –

Répondre

0

I a ajouté le codage à l'adresse avant concaténer l'URL et le problème résolu maintenant le code ressemble à ceci:

NSString* address = searchbar.text; 
NSString *encodedString = (NSString *)CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(NULL, CFBridgingRetain(address), NULL, (CFStringRef)@"!*'();:@&=+$,/?%#[]", kCFStringEncodingUTF8)); 

NSString* url = [NSString stringWithFormat:@"http://maps.google.com/maps/api/geocode/json?address=%@&sensor=false", encodedString]; 
Questions connexes