NSURL found nil while unwraping an Optional value

Swift 4

I was trying with :

https://api.url.com/method?token=abcdfghijklmopqrst&command=>SSSXP10<&otherParam=12345678

And the '>' and '<' characters was giving me the error.

For the solution :

let objectUrl = URL(string:url.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!)

The | character its not a valid URL character so you must replace it with percent escape character. Encoding whole string will do that automatically for you

var stringUrl = "https://roads.googleapis.com/v1/snapToRoads?path=-35.27801,149.12958|-35.28032,149.12907"

let URL = NSURL(string: stringUrl.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)!)!