Skip to content

常见问题

matrixbirds edited this page May 12, 2020 · 4 revisions

安全相关

  1. 该示例项目中,我们使用Basic HTTP Authentication方式来进行安全验证,该验证方式会生成固定Authorization 字段。如果你需要更安全的方式,可以使用Token Authentication的方式,自定义一个用于生成 Token 的 uid 进行动态绑定。关于如何生成 RTM Token,详见 校验用户权限

  2. 如果你担心白板sdkToken安全问题,你可以部署你自己的生成 Token 的服务。 你需要将白板的 sdkToken 保存在你自己的服务端,然后参考以下 Netless 相关文档在你的客户端代码中部署一个生成当前白板房间 Token 的服务。 参考文档

示例

Request GET {{tokenServiceUrl}}?channelName={channelName}

入参 类型 说明
channelName String 频道名

Response

Content-Type: application/json;charset=UTF-8
{
    "msg": "Success",
    "code": 0,
    "data": {

        "boardId": "",
        "boardToken": ""

    }
}

Web & Electron 项目相关

1. 中国区客户安装速度慢

中国区用户可以通过预设安装变量来提高安装速度。

# 中国区macOS用户可通过以下命令设置环境变量
export ELECTRON_MIRROR="https://npm.taobao.org/mirrors/electron/"
export ELECTRON_CUSTOM_DIR="5.0.8"
export SASS_BINARY_SITE="https://npm.taobao.org/mirrors/node-sass/"
# 中国区Windows用户可通过以下命令设置环境变量
set ELECTRON_MIRROR=https://npm.taobao.org/mirrors/electron/
set ELECTRON_CUSTOM_DIR=5.0.8
set SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass/

预设安装变量后,建议中国区用户通过以下方式安装npm依赖包

npm i --registry=https://registry.npm.taobao.org/

2. 运行 Electron 项目失败

排查步骤:

  1. 查看当前环境机器是否占用了 localhost:3000 。
  2. 也可能是因为 Electron没有下载成功。清理 node_modules/electron,预设安装变量,然后运行 npm i electron

3. 如何打包 Windows Electron demo

Windows 系统上打包 Electron demo 时,注意安装的 agora-electron-sdk 版本是否和打包的版本一致。例如安装 win32 agora-electron-sdk 的必须在打包之前 npm install --arch=ia32 [email protected]

4. 如何打包 macOS Electron demo

如需在 App Store 发布,请参考 Electron 和 App Store 相关资料。

5. 运行时遇到 window.__netlessJavaScriptLoader was override 报错

排查步骤:

  1. npm list | grep 'white-web-sdk' 查找当前他安装了几个 SDK。
  2. node_modules 里找到 white-web-sdk 最新的版本,然后删除其他多余的包。

6. 使用非 npm 方式安装环境

如果不是用 npm 安装,建议移除 node_modulesyarn.lockpackage-lock.json

7. 运行时遇到 agora_node_ext.node is not a valid Win32 application 报错

参考以下步骤:

  1. 先删掉 node_modules/electron
  2. npm install electron@<需要的版本> electron --arch=ia32
  3. package.json 里加入以下字段,然后重新安装 npm i agora-electron-sdk
"agora_electron": {
  "electron_version": "7.1.2",
  "prebuilt": true,
  "platform": "win32"
},