0

如本文档http://wopi.readthedocs.io/en/latest/discovery.html中所述,我想知道是否有办法动态使用操作 URL?

4

1 回答 1

2

“动态”是什么意思?

当您加载发现文件时,您可以通过替换占位符来动态构建操作 URL,例如<ui=UI_LLCC&>.

这是我的C# 代码,应该很容易转换为 Java:

    public async Task<string> GetFileUrlAsync(string extension, string wopiFileUrl, WopiActionEnum action, WopiUrlSettings urlSettings = null)
    {
        var combinedUrlSettings = new WopiUrlSettings(urlSettings.Merge(UrlSettings));
        var template = await WopiDiscoverer.GetUrlTemplateAsync(extension, action);
        if (!string.IsNullOrEmpty(template))
        {
            // Resolve optional parameters
            var url = Regex.Replace(template, @"<(?<name>\w*)=(?<value>\w*)&*>", m => ResolveOptionalParameter(m.Groups["name"].Value, m.Groups["value"].Value, combinedUrlSettings));
            url = url.TrimEnd('&');

            // Append mandatory parameters
            url += "&WOPISrc=" + Uri.EscapeDataString(wopiFileUrl);

            return url;
        }
        return null;
    }

请注意,WopiUrlBuilder使用WopiDiscoverer促进对发现文件的低级操作。

于 2018-06-15T14:30:11.527 回答