问题标签 [confluence-rest-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
13903 浏览

python - 如何创建一个新页面以与 Python 融合

我正在尝试使用 Python 的xmlrpclib. 我已经知道如何更新现有页面的内容,但是如何创建一个全新的页面?

我使用以下脚本来更新内容:

并且在更新内容时效果很好。但问题是,在创建新页面时我需要以某种方式解决,但pageID我不知道该怎么做。

还有其他方法可以创建新页面吗?

0 投票
2 回答
725 浏览

confluence-rest-api - 如何使用 REST API 将“PDF 宏”插入现有的 Confluence 页面

我一直在尝试使用 REST API 将“PDF 宏”插入到 Confluence 页面中,但显然遗漏了一些东西。我已经使用 REST API 成功创建了页面并将 PDF 附加到页面,但我很难理解我做错了什么。

这是抛出的异常;

0 投票
1 回答
2509 浏览

rest - Confluence REST API - 按标题检索页面时扩展页面正文

我正在title使用最新的 REST API 访问 Confluence 页面。为了检索某些字段的更多详细信息,我传递了expand参数(请参阅Confluence Docs):

或者

但结果在找到的页面正文中不包含任何信息。

请注意,这适用于仅使用页面 ID 的请求。使用标题检索页面的线程类似于搜索结果,因此扩展功能似乎不一样。根据文档,它应该按照我的示例工作。我错过了什么吗?

0 投票
1 回答
2375 浏览

javascript - confluence REST API 请求而不是管理员以 401 错误结束

我正在开发合流蓝图,用户可以在其中选择 jira 项目并将它们用于特定的 jira 问题报告。

两个实例相互正确连接,我得到结果,但前提是我以管理员身份登录。对于普通用户,我得到了这个:

不幸的是,我必须从 jira 服务器获取信息作为使用 javascript 的 ajax 发布请求,这是我的代码:

我曾尝试在 ajax 中使用具有基本身份验证的登录信息,但它没有帮助。当然我可以在代码中硬编码 id 但是如果它被改变了怎么办?它不是海事组织的最佳解决方案。我该如何管理 websudo 问题?

谢谢你,祝你圣诞快乐,新年快乐。

0 投票
0 回答
40 浏览

xml - XML:将不正确/无用的标记转换为有用的标记

我正在尝试解决一个非常具体的问题,该问题是由于数千页 MediaWiki wikicode 被错误地解析为 Confluence 的 XML 语法而导致的。不幸的是,原始的 wikicode 不再可用,因此手头的任务是清理 Confluence XML 语法。

语法错误

正确的语法

(错误的语法是由Universal Wiki Converter (UWC) 的MediaWiki Converter 插件生成的,它将 wikicode 解释为文本“ ”链接到页面“ ”,而不是嵌入的图像“ ”,宽度为.)[[File:image.jpg | 500px]]500pxFile:image.jpgimage.jpg500px

我已经成功地使用一系列查找/替换操作修复了 XML 语法,但这是一个非常手动的过程,它使用了 Sublime Text 3 中的脚本/插件制作的一组组件。

作为一个快速概述,这是我一直在使用的一组替代品:

  1. 消除<ac:link>
  2. 消除</ac:link>

  3. 替换<ri:page ri:content-title="<ac:image><ri:attachment ri:filename="

  4. 替换<ac:plain-text-link-body><![CDATA[500px]]></ac:plain-text-link-body></ac:image>

  5. 替换ri:filename="File__ri:filename="

使用我的脚本确实“有效”,但由于我已经证明了修复 Confluence XML 语法的价值,我现在有更多的时间来使用更好的方法来制作一个“好的”解决方案。一个理想的解决方案是用 JavaScript 编写(这样我就可以创建一个 Greasemonkey 脚本来使用 Confluence 的浏览器内代码编辑器来修复标记),或者以这样一种方式,它可以利用 Confluence 的 REST API。

我有一些脚本编写经验(包括 PHP、JavaScript 和一点 Python)和有限的编程经验,并且通过我自己对现有脚本的研究,我还没有找到可以轻松适应此目的的现有脚本,所以我寻找有关构建脚本以满足此需求的最佳方式的建议/指导。

我如何构建一个脚本来链接这样一系列的查找/替换操作?

0 投票
1 回答
60 浏览

vba - 合并包含 NULL 的字符串

我正在尝试使用confluence REST API将文件附加到 wiki 页面。我使用 VBA 在 excel 中生成各种图表并将它们保存为图像(当前为 png/jpeg)。

然后,我使用此处的示例将文件作为附件上传到 wiki。这种方法适用于文本文件,但是当我尝试使用图像时,我遇到了一些问题。具体来说,据我了解,代码:

尝试通过连接字符串将字符串边界添加到文件的二进制表示。我的问题是 png 的表示包含 NUL

这会立即终止字符串,因此您会丢失文件的其余部分和最终的字符串边界。我相信这发生在 excel 中的所有字符串功能上。

我的问题是我应该如何将字符串边界附加到我的文件以避免这个问题?

提前致谢 :)

0 投票
1 回答
1018 浏览

perl - 使用 perl REST::Client 和多部分表单将图像发布到 Confluence

如何通过 REST::Client 模块从 Perl 使用他们最新的 REST API 将图像附加到现有的 Confluence 页面?

这可能是一个 perl 问题(我可能发布了错误的图像),或一个 Confluence 问题(他们的 API 文档可能缺少所需的详细信息,例如 curl 悄悄添加的所需标题),或两者兼而有之。

我已经使用 REST::Client 模块建立了一个连接对象 $client。我通过对已知的 Confluence 页面 ID 执行 $client->GET 验证了 $client 是一个有效的连接,它正确地返回了页面的详细信息。

我尝试上传图片,使用:

...并且图像未出现在附件列表中。

我在那里上传图像时对浏览器进行了数据包嗅探,却发现它使用了已弃用的原型 API。我希望我可以站在 Atlassian 的肩膀上,确切地了解他们的帖子流是什么样子,并复制它……但我不想使用已被弃用的 API,因为他们不推荐使用它。

调用 Confluence API 以附加他们在https://developer.atlassian.com/confdev/confluence-rest-api/confluence-rest-api-examples提供的文件的 curl 示例,当我的主机、文件名和页面ID被替换,并发布附件。

我以前在我的内容项数组中指定了注释,但在调试过程中删除了它以简化事情,因为文档说它是可选的。

我不清楚的一件事是将文件的内容放入帖子流中。在 curl 命令中,@ 完成了该操作。在 REST::Client 中,我不确定我是否需要做更多的事情来实现这一点。

我无法对传出流量进行数据包嗅探,因为我们的服务器只允许 https,而且我不知道如何(或者是否可能)设置 REST::Client 模块或其底层模块之一来记录 SSL 信息到一个日志文件,以便 Wireshark 可以获取它并解码生成的 TLS 流量,就像使用 Chrome 或 Firefox 的环境变量一样。我也无权访问服务器日志。所以我不知道我实际发送的请求是什么样的(如果我这样做了,我可能会说,“好吧,这里看起来不对”或“但看起来对吗?!”)。因此,不幸的是,我不知道如何如此盲目地调试它。

去年 4 月,其他人更笼统地问了一个关于使用 REST::Client 发布多部分表单的类似问题,但没有收到任何回复。我希望由于我的更具体,有人可以告诉我我可能做错了什么。

任何帮助,将不胜感激。

0 投票
2 回答
1836 浏览

php - Confluence Rest API 中作为主体的存储格式(页面创建)

我正在使用 PHP 开发页面导入器,但在使用存储格式创建页面时遇到了问题。基本上我收到格式错误的 xhtml 错误:

目的是创建 phpDocumentor 之类的源文档,因此我手动创建了页面,其中包含正确显示类文档所需的所有宏。问题是当我使用“查看存储格式”选项时,我得到的 XML 无效:

所以当我在 REST API 调用中使用它时,我收到了之前提到的错误。调用如下所示:

我正在使用 Confluence 5.9.4。

我尝试创建此页面的方式有问题吗?页面中可用的存储格式是否与 API 不兼容?

0 投票
1 回答
342 浏览

confluence - 有没有办法在 Confluence 中使用插件/宏在页面上显示结果?

这里完全假设,只是想知道是否有人有任何想法。

我在 Confluence 中创建了一个使用 REST API 浏览器的 REST 端点。

我有一个想法,涉及以表格形式在特定 Confluence 页面上显示来自 REST 端点的结果。有谁知道这是否可能?

因此,用户进入 Confluence 页面进行编辑,并使用宏或插件访问 REST 端点。然后 REST 返回用户需要的信息,用户可以在页面上显示此信息。

我在想它必须涉及:

  1. 编写一个访问 REST 端点本身并将结果转换为表格的宏。

  2. 编写访问 REST API 浏览器的宏以获取结果,然后将其显示在表格中。

我不期待这里有任何深入的答案,我只是想知道是否有人尝试过类似的东西?或者对我如何开始做这件事有任何想法?我的搜索没有带回任何类似的结果。

0 投票
1 回答
7121 浏览

python - Uploading attachments to Confluence REST API with Python Requests gives 415 and 500 Errors

I am trying to upload an attachment to Confluence via the REST API, using Python Requests. I always get either a "415 unsupported media type" error or a "500 internal server error", depending on how I send the request.

There are several bits of information about how to do this with other languages, or using Python via the now deprecated XMLRPC API, or for the JIRA REST API which seems to behave slightly different.

This is how, according to all that information, the code should look like:

What is missing is the correct content-type header. There is different information out there:

  • use the correct content-type for the file, in this case image/jpeg
  • use application/octet-stream
  • use application/json
  • use multipart/form-data

(The Confluence version I am using is 5.8.10)