inesperadamente encontrado nulo al desenvolver un valor opcional – Uso de ALAMOFIRE

Estoy intentando usar Alamofire para GETs en JSON. Cuando uso una URL, funciona bien y cuando uso otra, aparece un error al desenrollar un valor opcional. No puedo rastrear de dónde viene el error. He recurrido al poner el código en ViewDidLoad para rastrear el error. No sé si es el destinatario y quieren algún tipo de autorización. pero sé que no es la printing porque cuando // ellos – todavía aparece como un error, aquí está el código:

request(.GET, "https://api.doingdata.net/sms/send?api_service_key='APIKey'&msg_senderid=Edify-FYI&msg_to=&msg_text={otp|Edify-FYI|3600|ETEN|4} &msg_clientref=abcdef123456&msg_dr=0&output=json") .validate() .responseJSON { (_, _, _, error) in println(error) } 

pero yo uso:

 request(.GET, "http://httpbin.org/") .validate() .responseJSON { (_, _, _, error) in println(error) } 

funciona bien y devuelve cero el error.

Cualquier ayuda sería genial, ya que me está volviendo loco.

La razón es simple: su URL tiene caracteres especiales. Entonces, si lo haces

 let url = NSURL(string:yourURLString) //returns nil 

Volverá nula Debería formatear su URL para que sea adecuada para realizar requestes. Aquí hay una solución para usted.

 var urlString = "https://api.doingdata.net/sms/send?api_service_key='APIKey'&msg_senderid=Edify-FYI&msg_to=&msg_text={otp|Edify-FYI|3600|ETEN|4} &msg_clientref=abcdef123456&msg_dr=0&output=json" urlString = urlString.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet())! request(.GET, urlString, parameters: nil, encoding: .JSON)