2016-10-04 10 views
7

URLのように表示されるようにURLComponentsを使用しようとしています。URLComponents.urlはゼロです

ただし、コンポーネントのurlプロパティにアクセスすると、それはゼロになります。

例...

var urlComponents = URLComponents(string: "http://google.com")! 
urlComponents.path = "auth/login" 

その後、私は...

print(urlComponents) 

出力...

scheme: http host: google.com path: auth/login 
    - scheme : "http" 
    - host : "google.com" 
    - path : "auth/login" 

しかし、その後...

print(urlComponents.url) 

の出力はnilです。

私はこれに何か問題がありますか?このすべてから完全に形成されたURLを取得するにはどうすればよいですか?ありがとう

+0

URLComponentsではなくNSURLComponentsを使用しようとしましたか? –

+0

あなたのvar urlComponentsに 'がありません。 (コードの最初の行) –

+0

@UmairAfzal私はSwiftを使用しています。 URLComponentsはNSURLComponents(ドキュメントごと)に橋渡しします。 – Fogmeister

答えて

29

pathのように見えます。パラメータの文字列は、/で始まる必要があります。

"auth/login"から"/auth/login"に変更します。

+2

私はちょうど来て、文書でもう少し掘り下げた後でこれに答えようとしていました。 (誰がドキュメントが何がうまくいかないかを説明すると思っていたでしょう)ありがとう – Fogmeister

+0

URLを構成する専用の型を持つ点は何ですか?(単にscheme、host 、など)あなたはまだこれらの事を見なければならない場合は?シェフ... –

+0

@NicolasMiariそれは実際には、クエリのパラメータと異なるスキームとホストをURLなどに埋め込むために本当に便利です...多分、テストとプロダクションホストなどの間で切り替える... – Fogmeister

関連する問題