Добавить раздел в URL в Swift - PullRequest
0 голосов
/ 10 апреля 2019

URL может иметь компонент #sectionName, который указывает на ту часть сайта, где начинается этот раздел.

В Swift я пытаюсь добавить этот компонент, но он не работает.Я пытаюсь:

let url = URL(string: "example.com/component1")!

Позже я пытаюсь сделать:

url.appendingPathComponent("#sectionName")

, но он возвращает example.com/component1%23sectionName вместо example.com/component1#sectionName.

В то времяURL создан. У меня до сих пор нет названия раздела, поэтому я не могу сделать URL(string: "example.com/component1#sectionName")

Я также пытался экранировать # с помощью \# или \\#,Но это не работает.Любые идеи, как добавить компонент, который является разделом?

Ответы [ 2 ]

2 голосов
/ 10 апреля 2019

Ваш #sectionName компонент не является компонентом пути, и вы не можете использовать appendingPathComponent.

Возможно, вам придется использовать URLComponent и добавить fragment:

var urlCompo = URLComponents(string: "example.com/component1")!
urlCompo.fragment = "sectionName"
let url = urlCompo.url!
print(url) //->example.com/component1#sectionName
1 голос
/ 10 апреля 2019

При создании URL-адресов я рекомендую вместо * вручную использовать (NS) URLComponents .

var components = URLComponents()
components.scheme = "https"
components.host = "example.com"
components.path = "/component1"
components.fragment = "sectionName"

let url = components.url
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...