【问题标题】:Freshdesk Oauth SSO: CORS Error on Accessing Freshdesk Redirect URI?Freshdesk Oauth SSO:访问 Freshdesk 重定向 URI 时出现 CORS 错误?
【发布时间】:2021-02-10 00:08:37
【问题描述】:

我正在为 Freshdesk 设置 OAuth SSO。我希望我的应用用户能够登录到我的 Freshdesk 支持网站,而无需创建新的用户名/密码。

到目前为止,以下步骤有效:

  • 我的网站用户单击“支持”菜单项
  • Freshdesk SSO 登录页面出现
  • 我的用户在那里点击“客户端登录”
  • Freshdesk 使用我的应用正确处理的 GET 请求访问我的授权 URL
  • Freshdesk 向我的同一个授权 URL 发送了一个 OPTIONS 请求,我没有做任何事情(除了调用 next()
  • Freshdesk 使用包含 redirect_uri 的 POST 请求访问我的相同授权 URL

这是我遇到麻烦的时候。我的服务器需要向 Freshdesk 提供的 redirect_uri 发送一些信息,我收到了 CORS 错误。

这是我的服务器代码:

    const clientId = req.body.client_id;
    const code = Random.secret();

    const q = new URLSearchParams({
        code: code,
        user: user._id,
        state: req.body.state
    })

    const finalRedirectUri = `${req.body.redirect_uri}?${q}`
    console.info(finalRedirectUri)
    const headers = {
        'Access-Control-Allow-Origin': '*'
    }
    res.writeHead(302, { headers, Location: finalRedirectUri})
    res.end()

这是错误信息:

我该如何解决这个问题?

【问题讨论】:

  • 这只是我想到的第一件事:您是从 localhost 进行测试吗?如果是这样(你还没有),尝试使用ngrok.com 的隧道可能是个好主意。这样您就可以将本地服务器暴露在互联网上,这可能会避免该问题。
  • 我正在使用类似于 ngrok 的东西——pagekite。因此,Freshdesk 确实通过发布请求成功到达了我的授权 URL。嗯......所以你没有在这里得到一个CORS错误?有趣。

标签: javascript oauth single-sign-on freshdesk


【解决方案1】:

我认为我的帐户设置中的 Freshdesk 方面存在错误。理论:当我第一次创建我的 Freshdesk 帐户时,我使用了默认 URL。后来我要求更改它们以反映我的应用程序名称,Freshdesk 进行了更改。可能他们当时错过了更新一些配置。

我已转到更适合我的应用的其他帮助台。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-30
    • 2014-09-22
    • 1970-01-01
    • 2016-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多