En una aplicación que estoy escribiendo tengo algo de código como este:Abrir una URL no estándar en una aplicación Cocoa
NSWorkspace* ws = [NSWorkspace sharedWorkspace];
NSString* myurl = @"http://www.somewebsite.com/method?a=%d";
NSURL* url = [NSURL URLWithString:myurl];
[ws openURL:url];
La diferencia principal es que myurl proviene de algún lugar fuera de mi control. Tenga en cuenta el% d en la URL que no es del todo correcto y significa que URLWithString falla, devolviendo nil.
¿Cuál es la forma "correcta" de manejar esto? ¿Debo analizar la cadena y codificar correctamente los argumentos? ¿O hay algún método inteligente en Cocoa que hace todo el trabajo duro para mí?