Closed xxmfypp closed 4 years ago
升级到 4.1.4 版本,然后利用 前置拦截器实现。 https://www.hasor.net/web/dataway/spi.html#preexecute
类似下面。
apiBinder.bindSpiListener(PreExecuteChainSpi.class, (apiInfo, future) -> {
String apiPath = apiInfo.getApiPath();
String apiMethod = apiInfo.getMethod()
if (...) {
// (方式1)通过 future 设置异常信息
future.failed(new StatusMessageException(401, "not power"));
// (方式2)或者直接 throw 一个异常
throw new StatusMessageException(401, "not power");
}
});
// Result
// {
// "success": false,
// "message": "not power",
// "code": 401,
// "lifeCycleTime": 42,
// "executionTime": -1,
// "value": "not power"
// }
发布出来的API如果增加权限校验?