Создать URL в Ktor

Пытаюсь построить запрос с HttpRequestBuilder в ktor. Я не понимаю, как я передаю URL. Логично предположить, что мы передадим .url("https://url.com") как один из элементов построителя вместе с несколькими другими вещами, а затем вызовем .build(), но Документы API говорят, что функция url предназначена для передачи как fun url(block: URLBuilder.(URLBuilder) -> Unit): Unit.

Может кто-нибудь помочь мне понять, как перейти в URLBuilder.(URLBuilder) -> Unit с примером, пожалуйста? Я не совсем понимаю, о чем он просит меня передать.


person caladeve    schedule 05.01.2021    source источник


Ответы (1)


Функция url (), о которой вы говорите, требует, чтобы вы передали функцию расширения URLBuilder. Например:

val builder = HttpRequestBuilder()
builder.url {
    protocol = URLProtocol.HTTPS
    host = "stackoverflow.com"
    encodedPath = "/somePath"
}
val request = builder.build()
person davehenry    schedule 05.01.2021