如何以编程方式向上传到 IBM SmartCloud 社区的文件添加标签?

How do I programmatically add a tag to a file uploaded to a community on IBM SmartCloud?

我正在使用 IBM Social Business Toolkit 上传文件,现在想向其添加标签。作为上传的一部分或紧随其后。在 javadoc 中,我可以看到 FileService 有一个方法可以向文件添加注释。不过我看不到标签的等效项。

有一种 Java 方法可以更新社区文件上的标签 - 但它在最新版本的 Smartcloud 中被破坏了。它实际上已在最新的 GitHub 版本的代码中修复,但截至 2015 年 4 月无法下载。

这里报告了错误 https://github.com/OpenNTF/SocialSDK/issues/1624。该方法应该是 updateCommunityFileMetadata 并且我们可以添加标签作为元数据。这很容易添加到 "addFile" Java 方法的末尾。

可以在播放组中找到标记文件的示例代码 - 它正在通过 JavaScript API

更新元数据

https://greenhouse.lotus.com/sbt/sbtplayground.nsf/JavaScriptSnippets.xsp#snippet=Social_Files_API_UpdateCommunityFileMetadata

使用以下方法标记文件

function tagFile(yourFileId, yourDocUnid){
    require([ "sbt/connections/FileService", "sbt/dom", "sbt/json" ], function(FileService, dom, json) {

        var fileService = new FileService();
        var fileId = yourFileId
        var docId = yourDocUnid
        var tagArray = [];
        tagArray.push(docId)

        fileService.updateCommunityFileMetadata({
            id: fileId,
            tags: tagArray
        }, communityId).then(function(file) {
            dom.setText("json", json.jsonBeanStringify(file));
        }, function(error) {
            dom.setText("json", json.jsonBeanStringify(error));
        });

    });
}