Help

Help > Chat Room > 網站集成 > 单点登录集成

单点登录集成

您可以使用单点登录 (SSO) API 自动将访客登录到您的聊天室。如果您的网站上有单独的登录区域并且不想让访问者两次登录,这可能会很有用。

SSO API 允许您从应用程序内部发送 HTTP 请求,以使用户登录或退出聊天室。API 会返回一个令牌,然后将其用在下一页的小 IMG 标签中,以存储必要的浏览器 Cookie。

如果你使用的是 PHP,我们强烈建议你使用我们的 SSO 库。它包含一个文件,其中包含您需要的所有库代码,以及其他带有示例用法的文件。

如果你在你的网站上使用WordPress,我们有一个 WordPres 它会自动整合您的登录和注册流程。

请按照以下说明将 SSO API 集成到您的网站中。

获取你的 API 密钥

API 密钥作为参数传递到您的 API 调用中,以验证您是否是聊天室 API 的授权用户。您的 API 密钥就像您账户的密码,应保密且安全。

你可以按照以下说明获取 Website Toolbox 聊天室 API 密钥:

  1. 登录您的 Website Toolbox 账户。
  2. 单击 “设置” 链接。
  3. 复制 API 密钥选项旁边提到的 API 密钥。

请求生成访问令牌

在您网站的登录脚本中,向 SSO API 登录 URL 发出 HTTP 请求:

http://CLIENT.discussionchatroom.com/sso/token/generate?apikey=APIKEY&username=USERNAME&email=EMAIL&avatarUrl=AVATARURL&password=PASSWORD

将 APIKEY 替换为机密 API 密钥。

将用户名替换为待登录用户的用户名。

将 EMAIL 替换为待登录用户的电子邮件 ID。

将 AVATARURL 替换为用户个人资料照片的网址。这是可选的。否则,用户可以随时在聊天室中设置他们的头像。

将 PASSWORD 替换为待登录用户的未加密密码。

用户名和密码是可选参数,仅在需要创建账户时使用,因为账户尚不存在。如果帐户是在没有密码的情况下创建的,则用户将无法直接登录聊天室,除非他们首先在登录页面上重置密码。即使用户的帐户没有密码,SSO 登录也能顺利进行。

解析响应以检索访问令牌

解析发送到的请求的 JSON 响应 生成访问令牌 检索身份验证令牌,即 “访问令牌”。JSON 响应将如下所示:

{
 “成功”:没错,
 “消息”: “这是成功或失败的消息。“,
 “access_token”: “88sngrlFrQL”
}

成功-它对应于请求的状态。如果成功生成身份验证令牌,则为真。否则是错误的。

消息-这是在响应中共享的消息。它对错误响应更有用。

access_token-这是成功进行身份验证后为用户生成的访问令牌。为了确保安全性,该令牌将在 60 分钟后过期。

向聊天室申请登录

在您的网站上,将以下 HTML IMG 标签添加到 “成功登录” 登录页面:

” src= “//CLIENT.discussionchatroom.com/sso/token/ login?access_token=ACCESS_TOKEN&rememberMe=REMEMBERME

将 ACCESS_TOKEN 替换为在步骤中检索的 access_token 解析响应以检索访问令牌>。

将 REMEMBERME 替换为值 0 或 1。要让浏览器即使在浏览器关闭后仍记住用户的登录信息,请将 REMEMBERME 替换为 1,否则将其替换为 0 以在浏览器关闭后清除登录信息。

加载IMG标签的浏览器窗口将以用户名登录聊天室,该用户在向聊天室发出请求时提供的用户名 生成访问令牌。

Safari浏览器附带了保守的Cookie政策,该政策将cookie写入仅限于用户选择(“导航到”)的页面。这样可以防止在 “成功登录” 登录页面上设置论坛的登录 cookie。因此,在Safari浏览器上运行单点登录的唯一方法是同时将身份验证令牌传递到网站聊天室的链接中。例如:

退出聊天室

如果用户想退出聊天室或当用户注销网站时,请将以下 HTML IMG 标签添加到您的 “成功注销” 登录页面:

将 ACCESS_TOKEN 替换为在步骤中检索的 access_token 解析响应以检索访问令牌。

如果您没有登录期间返回的身份验证令牌,则可以通过向以下地址发送请求来检索或重新生成该令牌(如果已过期) 生成访问令牌 API。

网址设置

您可以按照以下说明设置您的网站网址:

  1. 登录您的 Website Toolbox 账户。
  2. 单击 “设置” 链接。
  3. 在 “单点登录” 部分下,为以下页面指定您的网站网址:
    • 登录页面:指定您网站的登录页面的地址,以确保所有聊天室登录均使用您网站的登录表单进行。
    • 注销页面:指定您网站的注销页面的地址,以确保用户在退出聊天室后看到您网站的注销页面。
    • 注册页面:指定您网站的注册页面的地址,以确保用户在点击聊天室登录页面上的 “创建帐户” 链接时看到您网站的注册页面。

在聊天室注册用户

要在聊天室注册用户,请向 SSO API 用户注册网址发出 HTTP 请求:

http://CLIENT.discussionchatroom.com/sso/user/register?apikey=APIKEY&username=USERNAME&email=EMAIL&password=PASSWORD&avatarUrl=AVATARURL

将 APIKEY 替换为机密 API 密钥。

将用户名替换为待注册用户的用户名。

将 EMAIL 替换为待注册用户的电子邮件 ID。

将 PASSWORD 替换为待注册用户的未加密密码。这是一个可选参数。如果在没有密码的情况下创建帐户,则用户将无法直接登录聊天室,除非他们首先在登录页面上重置密码。即使用户的帐户没有密码,SSO 登录也能顺利进行。

将 AVATARURL 替换为注册用户?的个人资料 图片网址。这是可选的。

发送注册请求是可选的,因为如果帐户在注册期间不存在,则会自动创建帐户 单点登录请求。

JSON 响应还将返回一个访问令牌,该令牌可用于用户登录。按照中的步骤操作 解析响应以检索访问权限 代币 和 请求登录到聊天 房间 以新注册的用户登录。

删除用户

要从聊天室中删除用户,请向 SSO API 用户删除 URL 发出 HTTP 请求:

http://CLIENT.discussionchatroom.com/sso/user/delete?apikey=APIKEY&emails=EMAILS

将 APIKEY 替换为机密 API 密钥。

将电子邮件替换为要删除的用户的电子邮件地址。它可以容纳一个电子邮件地址或多个以逗号分隔的电子邮件地址。

编辑用户详情

要编辑聊天室用户的详细信息,请向 SSO API 编辑用户 URL 发出 HTTP 请求:

http://CLIENT.discussionchatroom.com/sso/user/edit?apikey=APIKEY&user=USER&username=NEWUSERNAME&email=NEWEMAIL&password=NEWPASSWORD&avatarUrl=NEWAVATARURL

将 APIKEY 替换为机密 API 密钥。

将 USER 替换为用户的当前电子邮件地址。

将新用户名替换为需要设置的新用户名。

用需要设置的新电子邮件替换 NEWEMAIL。

用需要设置的新密码替换 NEWPASSWORD。

将 NEWAVATARURL 替换为需要设置的新头像 URL。

参数 apikey 和 user 是必填字段。其他字段是可选的。不应在 URL 中添加不应为用户更新其值的参数。如果 “用户名” 和 “电子邮件” 的值为空,则不会更新。

重要注意事项

  • 需要帮助?我们的开发人员可以在您的网站上设置单点登录集成。联系我们
  • 要访问聊天室,您的页面上应该有一个聊天室链接,例如:

    启动聊天室

  • 客户应替换为你的 Website Toolbox 聊天室用户名。
  • 可以解析响应以进行调试。JSON 响应将类似于 这个。
  • 查询字符串必须采用 URL 编码。


If you still need help, please contact us.