httpbuilder-ng 在尝试 post 时没有方法 multipart() 的签名

httpbuilder-ng no signature of method multipart() when attempting a post

我几乎完全按照 HttpBuilder-NG 示例中列出的代码实现了此代码,但它对我不起作用。由于某种原因,它不将 multipart 识别为一种方法。来自库创建者的示例 https://http-builder-ng.github.io/http-builder-ng/asciidoc/html5/#_multipart

def uploadFileNG(String targetTestId, String filePath) {
    File someFile = new File(filePath)
    OkHttpBuilder.configure {
        request.uri = blazeUrl
    }.post {
        request.uri.path = "/api/latest/tests/${targetTestId}/files"
        request.contentType = "multipart/form-data"
        request.body = multipart {
            field 'name', 'This is my file'
            part 'file', someFile.getName(), 'text/plain', someFile
        }
        request.encoder 'multipart/form-data', OkHttpEncoders.&multipart
    }
}

multipart 方法(在 request.body 配置中)需要静态导入(我将更新文档以更明确地说明这一点)。

对于您的示例,这将是 import static groovyx.net.http.MultipartContent.multipart