Size: a a a

2020 July 08

AM

Andrew Mikhaylov in Kotlin JVM
Я думаю, какой-нибудь класс типа URI должен уметь такое складывать сам.
источник

AM

Andrew Mikhaylov in Kotlin JVM
И для v4, и для v6 -- засовываете туда хост, порт, путь и получаете строку на выходе.
источник

AN

Alexander Nozik in Kotlin JVM
Andrew Mikhaylov
Я думаю, какой-нибудь класс типа URI должен уметь такое складывать сам.
Там какой-то бардак в кторе. Есть штуки три сущности описывающие одно и то же и нет методов для конверсии между ними.
источник

AN

Alexander Nozik in Kotlin JVM
А еще только мой бледнолицый брат мог два раза наступить на одни грабли: https://github.com/ktorio/ktor/issues/1663
источник

AN

Alexander Nozik in Kotlin JVM
🤦‍♂️
источник

AM

Andrew Mikhaylov in Kotlin JVM
Ну если вы не в мультиплатформе, всегда есть java.net.URI
источник

AN

Alexander Nozik in Kotlin JVM
Я на JVM. Это баг CIO и я сам его открыл полгода назад
источник

AN

Alexander Nozik in Kotlin JVM
Пора на пенсию или хотя бы в отпуск
источник

AM

Andrew Mikhaylov in Kotlin JVM
Я всё ещё не понял, почему это баг :)
источник

AN

Alexander Nozik in Kotlin JVM
Andrew Mikhaylov
Я всё ещё не понял, почему это баг :)
Потому что должен быть валидный хост. А это не валидный хост
источник

AM

Andrew Mikhaylov in Kotlin JVM
Alexander Nozik
Потому что должен быть валидный хост. А это не валидный хост
Так у вас там все нули или всё-таки ::1?
источник

AN

Alexander Nozik in Kotlin JVM
Andrew Mikhaylov
Так у вас там все нули или всё-таки ::1?
один в конце. Но это по-моему одно и то же, там луп-беки
источник

AN

Alexander Nozik in Kotlin JVM
Формат не валидный - это важно
источник

AM

Andrew Mikhaylov in Kotlin JVM
Alexander Nozik
один в конце. Но это по-моему одно и то же, там луп-беки
Нет, это не одно и то же, все нули или коротко :: -- это аналог 0.0.0.0, т.е. "несуществующий адрес", ::1 -- это лупбэк, как 127.0.0.1.

И нет, это валидный формат. То, что этот хост дальше иным образом клеится в урлу -- это другой вопрос.
источник

AN

Alexander Nozik in Kotlin JVM
Andrew Mikhaylov
Нет, это не одно и то же, все нули или коротко :: -- это аналог 0.0.0.0, т.е. "несуществующий адрес", ::1 -- это лупбэк, как 127.0.0.1.

И нет, это валидный формат. То, что этот хост дальше иным образом клеится в урлу -- это другой вопрос.
Под валидным я понимаю тот, который просто запихивается в урл и работает
источник

AM

Andrew Mikhaylov in Kotlin JVM
А вот в ишуе все нули, и это действительно похоже на баг
источник

AM

Andrew Mikhaylov in Kotlin JVM
Alexander Nozik
Под валидным я понимаю тот, который просто запихивается в урл и работает
Ну значит вам немного терминологию стоит подправить 🤷‍♂ ::1 тоже просто запихивается в урл и работает, разве что с портом его клеить надо по-особенному. Неожиданно -- да, но не баг.
источник

AN

Alexander Nozik in Kotlin JVM
Andrew Mikhaylov
Ну значит вам немного терминологию стоит подправить 🤷‍♂ ::1 тоже просто запихивается в урл и работает, разве что с портом его клеить надо по-особенному. Неожиданно -- да, но не баг.
Вот есть кторовский объект Url, там есть поле хост. Если я пихаю туда этот хост, то получается на выходе не валидный урл. С джавовым не пробовал. Надо будет попрбовать
источник

AM

Andrew Mikhaylov in Kotlin JVM
Alexander Nozik
Вот есть кторовский объект Url, там есть поле хост. Если я пихаю туда этот хост, то получается на выходе не валидный урл. С джавовым не пробовал. Надо будет попрбовать
Вот это уже большое похоже на баг, нежели возврат IPv6 там, где вы v4 ожидали :)
источник

AN

Alexander Nozik in Kotlin JVM
Andrew Mikhaylov
Вот это уже большое похоже на баг, нежели возврат IPv6 там, где вы v4 ожидали :)
URI его заворачиват в квадратные скобки.
источник