I caratteri giapponesi (come sarebbe eventuali caratteri internazionali) sicuramente sono un problema. I caratteri consentiti negli URL sono piuttosto limitati. Se sono presenti nella stringa, l'inizializzatore disponibile URL
restituirà nil
. Questi caratteri devono essere in percentuale sfuggiti.
Al giorno d'oggi, useremmo URLComponents
in percentuale per codificare quell'URL. Ad esempio:
var components = URLComponents(string: "https://www.googleapis.com/youtube/v3/search")!
components.queryItems = [
URLQueryItem(name: "part", value: "snippet,id"),
URLQueryItem(name: "maxResults", value: "50"),
URLQueryItem(name: "order", value: "viewCount"),
URLQueryItem(name: "q", value: "ポケモンGO"),
URLQueryItem(name: "key", value: apikey)
]
components.percentEncodedQuery = components.percentEncodedQuery?.replacingOccurrences(of: "+", with: "%2B") // you need this if your query value might have + character, because URLComponents doesn't encode this like it should
let url = components.url!
per Swift 2 risposta con codifica cento manuale vedere prior revision of this answer.
Commento utile: se conosci persone che stanno inviando il tuo materiale, per favore chiedi loro di desistere. – halfer
Quindi Pokemon GO ha superato anche Stack Overflow :-) –
Puoi fare riferimento a questo http://stackoverflow.com/questions/32064754/how-to-use-stringbyaddypercentencodingwithallowedcharacters-for-a-url-in-swi –