0

我正在使用moleculer-web,如何获取可用的 API URL 列表。

http://0.0.0.0:4000/~node/actions显示 404。

4

1 回答 1

1

~符号用于引用的内部服务$node.actions,默认情况下这些路径不可用。要使内部服务可用,您必须指定:

    broker.createService ({
        mixins: [ApiService],
        settings: {
            routes: [{
                path: "/",
                whitelist: ["$node.*"]
            }]
        }
    });

同时,无法检索到您关于接收所有路由的问题的答案。操作是服务中注册的操作。URL 是服务的路由和别名,它们存储在本地的一个 api 服务中,为了获取它们,您需要将它们转换为所需的形式。

    broker.createService ({
        mixins: [ApiService],
        settings: {
            routes: [{
                path: "/",
                aliases: {
                    "GET aliases": "api.listAliases",
                },
                mappingPolicy: "all"
            }]
        }
    });

GET /aliases打印响应 json 示例

[{"actionName":"api.listAliases","path":"aliases","fullPath":"/aliases","methods":"GET","routePath":"/"}]

如果您需要更详细地披露这一点,请写下。

于 2020-06-23T17:36:14.377 回答