【发布时间】:2021-10-24 10:38:51
【问题描述】:
我想用 Ktor 做一个非常基本的事情:添加以下配置:
"Access-Control-Allow-Origin": "*"
"Access-Control-Allow-Methods": "*"
"Access-Control-Allow-Headers": "*"
我通过the CORS documentation of Ktor 并没有找到如何实现它。
以下配置适用于 GET 请求,但 POST 请求失败。
install(CORS) {
anyHost()
}
通过我的 IDE 探索 API 并没有多大帮助。
问:如何在 Ktor 中完全禁用 CORS?
【问题讨论】:
-
您可以尝试列出所有方法并使用
allowHeadersPrefixed("") -
谢谢@dan1st。不幸的是,它没有帮助
-
doc 表示默认情况下,CORS 插件允许 GET、POST 和 HEAD HTTP 方法。所以理想情况下,这也适用于 POST。但你可以尝试在其中添加
method(HttpMethod.Post)。 -
我只尝试了
install(CORS) { anyHost() },它也适用于 POST。您能否详细说明您是如何测试 POST 请求以及它是如何失败的? -
我的问题是内容类型。在我的代码中,POST 请求指定内容类型,但 GET 请求不指定。这就是 POST 不起作用的原因。但问题仍然相关,我想完全禁用 CORS。