Github oauth多个授权回调URL

Baz*_*nga 17 oauth github oauth-2.0

我想在我的localhost和我的实时域中工作,有没有办法在github oauth设置中插入多个回调?我们如何解决这个问题?

重定向网址

Hua*_*uan 8

坏消息是我们无法在GitHub OAuth设置中插入多个回调.

好消息是我们可以在回调网址下使用多个回调子网址,然后您可以将其重定向(代理)到您想要的任何回调网址.

例如,如果您的回调网址是:domain.com/auth/github/callback,则以下回调网址都有效:

  1. domain.com/auth/github/callback/sub-callback-1
  2. domain.com/auth/github/callback/sub-callback-2
  3. domain.com/auth/github/callback/sub-callback-3

等等

在使用所有参数重定向到sub-callback-N之后,我们可以按预期跳转到任何其他回调url.

  • 我的问题是我希望一个授权的回调URL在本地工作https:// localhost / auth / github / callback,在生产环境中使用一个https://example.net/auth/github/callback。可以通过上面的描述来实现吗? (3认同)
  • 我认同.我相信你可以设置一个`https:// example.net/auth/github/callback-localhost`,然后让你的服务器将它重定向到`localhost`来存档. (2认同)

Ale*_*and 8

我通过在Github上为本地开发环境创建专用的OAuth应用程序来解决了此问题。因此,我有以下2个OAuth应用程序:

  1. 我的正式OAuth生产应用程序

    • 客户编号: ABC
    • 客户机密: 123
    • 授权回调网址: https://example.com/api/v1/security/oauth/github/callback
  2. 我的私人OAuth应用程序用于开发

    • 客户编号: XYZ
    • 客户机密: 456
    • 授权回调网址: https://localhost/api/v1/security/oauth/github/callback

在本地配置API时,我使用开发应用程序的ID和密码(2)。在生产中,我使用我的正式申请的ID和密码(1)。

  • 这是正确的做法。其他一切都只是一个黑客。另外,Github 应该提供一种指定多个回调的方法。 (8认同)