'UnknownHostException when trying to connect using websocket

I have a use case where I need to send 2 requests to the server. The output of first request is used in second request so the calls have to be synchronous. I am using ktor (OkHttp)client websocket for this. I am failing at first attempt to even connect to the server with this error

Exception in thread "main" java.net.UnknownHostException: https: nodename nor servname provided, or not known

I suspect I haven't split my url properly and thats why its not able to connect to host. Couple of qns

  1. Is there any benefit to using websocket instead of using 2 separate Http requests?
  2. Is there a way I can just pass URL to the websocket request?
  3. Best and easiest way to get response and send another request? I have been able to find very limited documentation on ktor client websocket.
const val HOST = "https://sample.com"
const val PATH1 = "/path/to/config?val1=<val1>&val2=<val2>"
const val PATH2 = "/path/to/config?val=<response_from_first_req>"

fun useSocket() {
    val client = HttpClient() {
        install(WebSockets)
    }
    runBlocking {

        client.webSocket(method = HttpMethod.Get, host = HOST, path = PATH1) {
            val othersMessage = incoming.receive() as? Frame.Text
            println(othersMessage?.readText())
            println("Testing")

        }
    }
    client.close()
}

Thanks in advance.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source