连接拒绝:在KTOR中提出请求时没有更多信息

发布于 2025-02-01 03:34:00 字数 1419 浏览 2 评论 0原文

 suspend fun callback(code: String, baseRoute: String): String {
        val body = Parameters.build {
            append("code", code);
            append("redirect_uri", baseRoute + REDIRECT);
            append("grant_type", "authorization_code");
        }

        println(body.toString())
        val response: HttpResponse = client.post("${BASE_URL}/api/token") {
//            contentType(ContentType.Application.FormUrlEncoded)
            headers {
                append("Authorization", "Basic ${encodedClientCredentials()}")
            }
            setBody(FormDataContent(body))
        }
        return response.toString();
    }

路由:

        get("/token") {
            val baseRoute = call.request.headers["baseRoute"];
            val code = call.request.headers["code"];
            if (baseRoute == null || code == null) {
                call.respond(HttpStatusCode.BadRequest, "Error");
            } else {
                call.respondText(api.callback(code, baseRoute));

            }
        }

当我向 /token提出请求时,我会得到

[eventloopgrouprouxy -4-1] debug ktor.application-毫无根据:获取 - /token。异常类Java.net.ConnectException:连接拒绝:无进一步的信息] java.net.connectException:连接拒绝:没有更多信息

回调方法提出了Spotify API获取令牌的请求。知道为什么会发生这种情况吗?

 suspend fun callback(code: String, baseRoute: String): String {
        val body = Parameters.build {
            append("code", code);
            append("redirect_uri", baseRoute + REDIRECT);
            append("grant_type", "authorization_code");
        }

        println(body.toString())
        val response: HttpResponse = client.post("${BASE_URL}/api/token") {
//            contentType(ContentType.Application.FormUrlEncoded)
            headers {
                append("Authorization", "Basic ${encodedClientCredentials()}")
            }
            setBody(FormDataContent(body))
        }
        return response.toString();
    }

Routing:

        get("/token") {
            val baseRoute = call.request.headers["baseRoute"];
            val code = call.request.headers["code"];
            if (baseRoute == null || code == null) {
                call.respond(HttpStatusCode.BadRequest, "Error");
            } else {
                call.respondText(api.callback(code, baseRoute));

            }
        }

when I make a request to /token I'm getting

[eventLoopGroupProxy-4-1] DEBUG ktor.application - Unhandled: GET - /token. Exception class java.net.ConnectException: Connection refused: no further information]
java.net.ConnectException: Connection refused: no further information

The callback method makes a request to Spotify API to get a token. Any idea why this is happening ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文