ApiRTC令牌认证

时间:2019-06-07 09:29:03

标签: javascript jwt webrtc

我正在尝试使用令牌身份验证,但没有成功。我想知道是否有人能成功做到这一点,因为ApiRTC官方文档在该主题上很薄弱。

1)我已在-“凭据”屏幕下方激活了秘密密钥

2)为了进行令牌验证,我已经通过API设置了服务-令牌认证屏幕

3)我有以下代码来创建用户代理

function createUserAgent(token) {
    ua = new apiRTC.UserAgent({
        uri: 'token:' + token
    });

    ua.register({
        id : useragentId
    }).then(uaRegistered)
    .catch(function (error) {
        console.log("Registration error");
    });
}

function uaRegistered(session) {
        console.log("Registration OK");
}

4)这将请求初始化到下面的地址。它失败并显示HTTP 401

获取https://cloud.apizee.com/api/v2/checkToken?token=eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhNWQxN2M1ZTVjOWZkYmRiNDJhYTgzMTJlMWQxMmEwYiIsImF1ZCI6ImFwaVJUQyIsImp0aSI6ImE5ZjU4NmNlLTcxMDctNDgxMS04ODYwLTQ5MjY4ODY2NjhiYiIsImlhdCI6MTU1OTg5OTA5MSwiZXhwIjoxNTU5OTAyNjkxLCJncmFudHMiOnsiaWRlbnRpdHkiOiJjbGk5OTQxOTgxNTgifX0.ZfQs_HgUXOWhCAlXB6fTMKhbT-pFslb9MK_JvXu2U5A 401(未经授权)

5)我还看到对令牌验证服务没有任何请求。

谢谢

编辑:根据答案进行更新

function createUserAgent(token) {

    apiRTC.setLogLevel(apiRTC.LOG_LEVEL_DEBUG);

    var registerInformation = {};
    registerInformation.id = useragentId;
    registerInformation.token = token;


    ua = new apiRTC.UserAgent({
            uri: 'apzkey:a5d17c5e5c9fdbdb42aa8312e1d12a0b'
    });

    $("#sessionStatus").text("Waiting for register response ");

    ua.register(registerInformation).then(uaRegistered)
    .catch(function (error) {
        debugger;
        console.log("Registration error");
        $("#sessionStatus").text("Failed to register UA");
    });

}

function uaRegistered(session) {
        debugger;
        console.log("Registration OK");
        connectedSession = session;
        $("#useragentId").text(useragentId);
        $("#sessionUsername").text(session.getUsername());
        $("#sessionStatus").text("Connected");

        debugger;
}

1 个答案:

答案 0 :(得分:1)

感谢您在文档中指出此问题,我们已经在此处进行了首次更新,以使用外部验证服务:

https://dev.apirtc.com/authentication/index

在客户端,您需要使用以下代码:

    registerInformation.token = "myToken"

    ua.register(registerInformation).then(function(session) {
        // Save session
        connectedSession = session;
    }).catch(function(error) {
        // error
        console.error('User agent registration failed', error);
    });

在uri中使用令牌是为了对Apizee产品进行用户身份验证