客户已为 JIRA 5.2.7 设置了应用程序链接,并且他们具有管理员权限。当调用“创建元”时,不会返回任何项目。请求正文返回:
array(
'expand' => 'projects',
'projects' => array(),
)
但是,客户向我发送了一个屏幕截图,显示了用户可以访问的项目。
我没有遇到 JIRA 6.0 的这个问题。发生这种情况的可能原因是什么?
客户已为 JIRA 5.2.7 设置了应用程序链接,并且他们具有管理员权限。当调用“创建元”时,不会返回任何项目。请求正文返回:
array(
'expand' => 'projects',
'projects' => array(),
)
但是,客户向我发送了一个屏幕截图,显示了用户可以访问的项目。
我没有遇到 JIRA 6.0 的这个问题。发生这种情况的可能原因是什么?
偶然的机会,我找到了答案。
为了让项目显示在 API 返回中,用户需要为他们应该有权访问的每个项目设置“浏览项目”权限和“创建问题”权限。作为项目的管理员不会自动授予该权限,而是通常从另一个角色继承,例如“用户”。
但是,JIRA 5.2 中还有一个令人讨厌的未记录的错误/功能,围绕使用 Oauth 进行身份验证。具体来说,该版本中的 JIRA oauth 需要对 oauth 参数使用查询参数。如果您将 POST 参数用于 oauth 参数,则会失败。
不幸的是,至少在那个版本的 JIRA 中,/createmeta API 调用将返回 200 状态和一个空响应,即使您没有经过身份验证,而不是预期的 401 状态代码。