OpenTok API身份验证

时间:2017-08-17 18:06:14

标签: opentok tokbox

我正试图在我的Angular App中调用OpenTok API。我使用以下代码

 $http({
    method: 'POST',
    url: 'https://api.opentok.com/v2/project/{{apiKey}}/broadcast',
    data: data,
    headers: {
      'Authorization':'X-OPENTOK-AUTH',
      'Content-Type': 'application/json'
    },
    token: json_web_token
  })

我有一个有效的json_web_token我正在传递。但是每当我尝试拨打这个电话时,我都会。

{"code":-1,"message":"No suitable authentication found"}

我很难搞清楚如何设置自定义X-OPENTOK-AUTH标头。任何人都可以告诉我我的代码有什么问题,或者是否有人有一个向OpenTok发出$ http调用的例子?

2 个答案:

答案 0 :(得分:0)

我让JSON网络令牌出错了。不得不把它移到后端并在那里完成。

这有帮助 https://tokbox.com/blog/author/madhav/

答案 1 :(得分:0)

以Mike的答案为基础,问题是:

<!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
  <link rel="stylesheet" href="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.css">
  <script src="https://code.jquery.com/jquery-1.11.2.min.js"></script>
  <script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
</head>

<body>
  <div data-role="page" id="page-one">
    <div data-role="content">
      <div data-role="collapsible" data-collapsed-icon="carat-d" data-expanded-icon="carat-u">
        <h4>Heading</h4>
        <p>I'm the collapsible content. By default I'm closed, but you can click the header to open me.</p>
      </div>
    </div>
  </div>
</body>

</html>

不正确。 X-OPENTOK-AUTH应该是标题名称,而不是标题值。授权标头名称将被忽略。它应该看起来像:

'Authorization':'X-OPENTOK-AUTH',

请参阅https://tokbox.com/developer/rest/#authentication以获取API参考,或https://tokbox.com/blog/jwt-the-new-authentication-scheme-for-opentok-rest-endpoints/查看有关该主题的博文。