连接 GitHub 登录

要让你的服务的用户用 GitHub 账号注册,需要先在 GitHub 那一侧登记你的服务,并取得 Client ID 和 Client secret。

本页介绍取得 Client ID 和 Client secret 的步骤。把这两个值填入 WEEGLOO 的做法,在把 Client ID 和 Client secret 填入 WEEGLOO中介绍。

从 GitHub 取得 Client ID 和 Client secret

登录 GitHub 后,请依次进行下面两个步骤。这里所做的事不产生费用。

1

登记 OAuth App

Client ID 和 Client secret 都放在这里登记的这一个应用里。

  1. 打开开发者设置界面(https://github.com/settings/developers (在新标签页中打开))。

  2. 在左侧菜单中点击 OAuth Apps。

  3. 点击 New OAuth app。

    OAuth Apps 界面。左侧菜单中有 GitHub Apps、OAuth Apps、Personal access tokens,列表是空的,可以看到 New OAuth app 按钮

  4. 在 Application name 中输入要展示给用户的名称(例如 暖心衣橱)。

  5. 在 Homepage URL 中输入你网站的地址(例如 https://nuanxin-yichu.com)。

    如果还没有做好网站,就先写上以后要用的地址。之后可以修改。表单中一起出现的 Application description 是可选项,写了的话会原样展示给用户,所以请写成给用户读的句子。

  6. 在 Redirect URI 框中粘贴下面的地址。选择你的 Space 后,标识符就会填好。

    Space
    https://auth.weegloo.com/v1/spaces/{spaceId}/login/oauth2/code/github

    如果你不清楚自己的 Space 是哪一个,而且已经把接入工作交给了 AI 智能体,也可以直接问智能体。在对话框中请求“告诉我要登记到 GitHub 登录的重定向地址”,就会得到完整的地址。

  7. 点击 Register application。

    Register a new OAuth app 表单。Application name 中是"暖心衣橱",Homepage URL 中是网站地址,Redirect URI 中是 WEEGLOO 的地址

2

复制 Client ID 和 Client secret

点击 Register application 后,会打开刚登记的这个应用的设置界面。Client ID 已经显示在这里,Client secret 则要现在点击按钮生成。

  1. 把 Client ID 中写着的值复制下来。

  2. 点击 Client secrets 标题右侧的 Generate a new client secret。

    刚登记完的应用设置界面。可以看到 Client ID 的值,Client secrets 标题右侧有 Generate a new client secret 按钮

  3. 点击生成的值右侧的复制图标,把 secret 复制下来。

    离开这个界面后就再也看不到 secret

    Client ID 会一直留在这个界面上,随时都能再看到,secret 却不是这样。如果弄丢了,就用 Generate a new client secret 重新生成,再把新取得的值填回 WEEGLOO。secret 正如其名,是要保密的值。不要告诉别人,也不要写在公开的地方。

    刚生成 secret 后的界面。可以看到蓝色提示、Client secret 的值和复制图标

邮箱要公开才能登录

GitHub 登录附带一个条件。用来登录的 GitHub 账号必须公开了邮箱。

WEEGLOO 在用户用 GitHub 登录时会一并取得该账号的公开邮箱,存入会员。在同一个 Space 中,一个邮箱只能注册一次。没有指定公开邮箱的账号不会送来这个值,注册就会停在那里。

停下来的时候,用户会看到 WEEGLOO 弹出的提示界面。上面以用户的语言写着没能取到邮箱,以及可以怎么做,旁边还有一个回到你网站的按钮。

提示没能取到邮箱的 WEEGLOO 界面。有原因说明和返回首页按钮

这时登录结果不会到达你的网站。所以你网站的代码既察觉不到这种情况,也无法代为处理。

这个问题需要用户自己解决。用户在 GitHub 账号设置(https://github.com/settings/profile (在新标签页中打开))中打开 Public profile,就能看到 Public email 这一项。在这里选好要显示的邮箱,从下一次登录起就能通过。还没有选的账号上只写着 Select a verified email to display。

GitHub 个人资料设置界面。左侧菜单中选中了 Public profile,Public email 下方的下拉列表中显示 Select a verified email to display

你在自己网站上能做的,是在用 GitHub 登录的地方事先写明这个条件,让用户在被挡住之前就知道。

把 Client ID 和 Client secret 填入 WEEGLOO

现在 Client ID 和 Client secret 都准备好了。从这里开始,会根据你此前是怎么操作的而分成两条路。

如果你一直在内容工作室中直接配置,请按下面的步骤进行。

  1. 回到服务会员登录的打开社交登录。
  2. 打开 GitHub。
  3. 在 Step 2 的 Client ID 框中填入 Client ID。
  4. 在 Client Secret 框中填入 Client secret。
  5. 点击 保存。

如果你把接入工作交给了 AI 智能体,并被告知去取 Client ID 和 Client secret,就把取得的这两个值原样粘贴到对话框中,继续之前的工作。剩下的配置由智能体接着处理。

接下来要做的事

  • 服务会员登录:把取得的值填入内容工作室,完成会员登录的其余配置。
  • 会员角色与权限:创建规定已注册会员能看什么、能用什么的 ServiceUserRole。
  • Auth API:介绍把登录接入自己网站代码时所需的请求格式等技术规范。