gpt4 book ai didi

http - 覆盖 NancyFX/Visual Studio Web 服务器中的 OPTIONS 响应

转载 作者:可可西里 更新时间:2023-11-01 16:30:37 24 4
gpt4 key购买 nike

我已经使用 NancyFX 构建了一个 RESTful 网络服务,我现在正尝试从一个单独的域发布到该服务。当然,当我这样做时,我会在控制台中看到一条失败的 OPTIONS 消息,因为这是一个跨站点 POST,我需要确保 Nancy 正确响应浏览器发送的 OPTIONS 消息。但是,当我在 Nancy 模块中定义路由时:

this.Options["/options/"] = _ => this.OptionsRequest();

private dynamic OptionsRequest()
{
return this.Response.AsJson(Request)
.WithHeader("Access-Control-Allow-Origin", "*")
.WithHeader("Access-Control-Allow-Methods", "POST")
.WithHeader("Access-Control-Allow-Headers", "Accept, Origin, Content-type");
}

代码永远不会被命中。我可以在调试器中的 OptionsRequest() 方法上设置一个断点,然后看到代码永远不会被命中。但是我可以在 postman 中发出一个 OPTIONS 请求,服务器返回一个响应(有趣的是,它似乎从所有 URI 返回一个响应,而不仅仅是我定义的/options/路由)。

是否存在我必须覆盖的默认 Nancy OPTIONS 行为以便为 OPTIONS 指定路由,或者这是否与 Visual Studio Development Web Server (Casini) 中托管的服务有关?我已经尝试了所有我能想到的方法,但我仍然对为什么我不能为这个特定动词定义行为感到困惑。

最佳答案

原来这是 Nancy v0.17.1 中的一个错误(参见 https://github.com/NancyFx/Nancy/pull/1093 )。升级到 0.18.0 解决了这个问题并允许我的 OPTIONS 路由正常工作。

关于http - 覆盖 NancyFX/Visual Studio Web 服务器中的 OPTIONS 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17748639/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com