1

我知道我在某个时候遇到过一个帖子,但我似乎找不到任何东西。似乎默认情况下,ServiceStack 允许通过 GET 或 POST 访问 /auth。GET 不是我们在生产中想要的东西。

我需要关闭对 /auth 的 GET 访问。有任何想法吗?

4

1 回答 1

3

您可以使用 AuthenticateServices 自定义 ValidateFn 添加您自己的自定义验证,例如:

AuthenticateService.ValidateFn = (authService, verb, requestDto) => {
    if (verb == HttpMethods.Get) 
        throw new NotSupportedException("GET's not allowed");
};

否则,您可以使用 fluent API 动态添加属性,在您不拥有的服务上添加自己的限制服务属性,例如:

typeof(Authenticate)
    .AddAttributes(new RestrictAttribute(RequestAttributes.HttpPost));
于 2014-05-25T14:27:51.860 回答