私は場所を検索するには、次のコードを使用しています:GoogleマップAPI:文字列URL Enconding
let correctedAddress:String! = self.searchResults[(indexPath as NSIndexPath).row].addingPercentEncoding(withAllowedCharacters: CharacterSet.symbols)
let url = URL(string: "https://maps.googleapis.com/maps/api/geocode/json?address=\(correctedAddress)&sensor=false")
self.searchResults [(NSIndexPathなどindexPath).row]このような文字列を返します。"サンパウロ - サンパウロ州、ブラジル」
URLのパラメータである文字列は、この(符号化後)のようなものです:私はこのURLを検索する場合
https://maps.googleapis.com/maps/api/geocode/json?address=Optional(\%22State%20of%20S%C3%A3o%20Paulo%2C%20Brazil\%22)&sensor=false
私のWebブラウザには、JSONが表示されます。だから私はそれが有効なURLであると仮定しますが、URLは(文字列:..)メソッドは、常に私はおそらく私のエンコーディングを変更する必要がゼロ
返し、私はCharacterSet.urlPathAllowedを使用してみましたが、常にnilを返します。
どのようなエンコーディングを使用する必要がありますか?それとも何か間違ったことがありますか?
をあなたが解決策を考え出すでしたか?私は同じ問題があります。私は、以下の回答が助けてくれたかどうかを試してみましたが、まだそれを働かせることができませんでした。 http://stackoverflow.com/questions/34805082/nsurl-is-returning-nil-for-a-valid-url – Ben
@Ben No.すでにエンコード率を使用しているので、ほとんどの回答で、 、私は解決策を得ることができませんでした – yasin