Swift: предотвращение автоматического экранирования компонента URL-адреса хоста

У меня есть следующие два базовых URL-адреса для моих методов API:

let stagingHost = "myApi.test.com/sub1"

let productionHost = "myApi.test.com/sub2"

когда я создаю URL-адрес для любого вызова API в своем приложении, я делаю следующее:

var components = URLComponents()
components.scheme = "https"
components.host = stagingHost //or productionHost doesn't matter
components.path = "apiMethodPath"
let url = components.url

это приведет к следующему URL:

https://myApi.test.com%2Fsub1/apiMethodPath который является недопустимым URL-адресом для моего API из-за автоматически добавленного %2F символов в компонент хоста, как не допустить, чтобы компонент хоста прервал экранирование своей строки URL?

ps я не могу добавить /sub1 а также /sub2 в качестве компонента пути к множеству методов api в зависимости от выбранной среды (промежуточной или производственной), потому что это будет трудоемкий процесс.

0 ответов

Другие вопросы по тегам