首页 > 解决方案 > 如何使用 Exchange API 发布自定义策略?

问题描述

此处列出的文档表明可以使用交换 API 发布自定义策略:https ://anypoint.mulesoft.com/exchange/portals/anypoint-platform/f1e97bc6-315a-4490-82a7-23abe036327a.anypoint-platform /exchange-experience-api/minor/2.0/pages/Asset%20Creation/

通常,文档充其量只是缺乏光泽。虽然它表明可以发布策略,但它没有给出任何示例。

分类器未在枚举中列出,但我发现使用mule-policy分类器似乎至少不再引发无效资产类型错误。

我正在向https://anypoint.mulesoft.com/exchange/api/v2/assets以下字段发出发布请求form-data

organizationId<- 这是业务组的 UUID

groupId<- 再次,业务组的 UUID(前两个字段必须匹配,否则ASSET_PRE_CONDITIONS_FAILED在使用 maven CLI 时您会收到与自定义策略部署说明一致的错误)

assetId<- 匹配 pom 文件中的资产 ID

version<- 匹配 pom 文件中的版本

name<- 策略名称

description<- 简短描述

classifier<- 使用mule-policy. 在使用custom作品上传工件时,它实际上并没有将其识别为策略。我已经验证了

classifier确实发生了,所以这似乎是一个有效的。

files.mule-policy.jar<- JAR 文件

files.policy-definition.yaml<- 策略定义文件

这将返回:

{
    "name": "BadRequestError",
    "status": 400,
    "message": "There are missing files in your asset publication.",
    "details": [
        {
            "arguments": [
                {
                    "key": "service",
                    "value": "custom-assets-facade"
                },
                {
                    "key": "asset",
                    "value": {
                        "organizationId": "<<REDACTED>>",
                        "groupId": "<<REDACTED>>",
                        "assetId": "<<REDACTED>>",
                        "version": "<<REDACTED>>"
                    }
                },
                {
                    "key": "errors",
                    "value": []
                }
            ],
            "code": "CUSTOM_ASSET_INVALID_ASSET",
            "message": "There are missing files in your asset publication"
        }
    ]
}

任何人都知道如何做到这一点?或者如果它实际上是可能的?

标签: mulesoft

解决方案


推荐阅读