我启用了CORS功能。我发现如果我没有:
[Route("/cors_endpoint", "GET, OPTIONS")]
根据我的要求dto,然后我得到了404。
当我使用CorsFeature
和下面的PreRequestFilter
时,我不明白这404会发生什么。 (我也有游戏中的身份验证属性,但我正在使用它进行无状态身份验证。)
Plugins.Add(new CorsFeature());
PreRequestFilters.Add((req, res) => {
if (req.Method == "OPTIONS")
{
res.StatusCode = 200; //my hack
res.EndRequest();
}
});
有什么想法吗? PS。仍在3.9.x
修改 我真正的问题可能应该是:
[Route("/cors_endpoint", "GET")]
这给出了404,并且根本没有点击PreRequestFilter。为什么呢?
答案 0 :(得分:2)
“新API”更改引入了更多HTTP动词签名。尝试添加服务选项方法。
public class ReqstarsService : Service
{
[EnableCors]
public void Options(Reqstar request) {}
}