JIRA Cloud REST API (OAuth 2.0) POST 请求上的错误 403

JIRA Cloud REST API (OAuth 2.0) Error 403 on POST Requests

我正在尝试将我的 React 应用程序连接到 Jira Cloud API,但似乎无法通过 403 错误。

我的代码目前使用 OAuth 2.0 and returns the token and cloudid. I can use this to GET issues, however POST request (like creating an issue) return with 403. I have found here 执行身份验证舞蹈,如果用户没有访问资源或 运行 方法的必要权限, 将返回此错误。

我已确保用户具有正确的范围([写入:jira-work,读取:jira-work])并验证这反映在用户帐户中(在他们的帐户 > 连接应用程序选项卡中)。

我的应用程序未链接(通过 ApplicationLink)或安装(通过应用程序、管理应用程序),这是否是执行 POST 请求所必需的?

这是我的代码示例:

fetch(`https://api.atlassian.com/ex/jira/${jira.cloudid}/rest/api/2/issue/`, {
    method: "POST",
    headers: {
        "Content-Type": 'application/json',
        "Authorization": `Bearer ${jira.token}`
    },
    body: JSON.stringify(data)
})
.then(...)

api 版本 2 或版本 3 均不适用于此 POST 请求。我已经探索过使用 Basic Auth 但是由于 CORS 错误这失败了。

我已经验证 POST 请求在 POSTMAN 中有效(使用 cloudid 和令牌)。

---------------------------------------- ---------------------------------------------- --------------------------------

更新

与 Atlassian 员工交谈后,他们的 API 安全性存在问题:

“通过尝试您提到的相同方法,我想我找到了问题所在。您的请求可能会失败,并在浏览器中显示“XSRF 检查失败”。 我已经与我们的一位安全工程师谈过,我们很快深入研究了实施代码,以确认为什么这不起作用以及我们这边需要更改的内容。我们也已经开了一张工程票来解决这个问题。这可能需要几周时间才能解决,但如果我听到任何更新,我会及时通知您!

XSRF check failed 是我的 403 响应的主要错误。我会 post 我收到的任何更新,并在找到解决方案时回答问题。

这显然已经解决了。关注这里的讨论:https://community.developer.atlassian.com/t/jira-cloud-rest-api-oauth-2-0-error-403-on-post-requests/25621/4