我试图在我的Web中使用OpenTok API创建一个会话。我得到了以下错误。
请求:
https://api.opentok.com/session/create
Method: POST
Headers: Accept:application/json
Headers: X-OPENTOK-AUTH :{"iss":"<My api key>","ist":"project","iat":"1528482600000","exp":"1528569000000","jti":"jwt_nonce"}错误:
Response
{
"code": -1,
"message": "Invalid token format",
"description": "Invalid token format"
}如果我设置了::in header (这是不推荐的),它可以很好地工作。
注意:他们的文档中指定使用这种不推荐的身份验证形式的TokBox将于2017年7月到期。
任何帮助都将不胜感激。
发布于 2018-06-13 08:38:29
东京QA的工作人员来了。
我已经成功地尝试了下面的代码:
https://tokbox.com/developer/rest/#authentication
import jwt # See https://pypi.python.org/pypi/PyJWT
import time
import uuid
print jwt.encode({"iss": "my-OpenTok-account-API-key",
"iat": int(time.time()),
"exp": int(time.time()) + 180,
"ist": "project",
"jti": str(uuid.uuid4())},
'my-OpenTok-API-secret',
algorithm='HS256')注意jti字段中的轻微修改(包括str)。当我运行这个脚本(使用我的API密钥和秘密)时,我得到令牌,并将它存储在环境变量令牌中。
该呼吁将是:
curl -v -X POST https://api.opentok.com/session/create -H "x-opentok-auth: $TOKEN"服务器响应的内容是:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><sessions><Session><session_id>2_MX4xMDB-fjE1Mjg4Nzg4MTE4Mjd-SWhJN0JFd0plRlhPUXBLanhSN0xjVjBSfn4</session_id><project_id>100</project_id><partner_id>100</partner_id><create_dt>Wed Jun 13 01:33:31 PDT 2018</create_dt><session_segment_id>d14b6edc-07c7-4b90-a4a5-962d864a86f4</session_segment_id><ice_credential_expiration>86100</ice_credential_expiration><properties><p2p><preference value="disabled"/></p2p><h264Codec>none</h264Codec><vp9Codec>none</vp9Codec><vp8Codec>all</vp8Codec><priorityVideoCodec>vp8</priorityVideoCodec><clientCandidates>all</clientCandidates></properties></Session></sessions>我希望这能帮到你。
https://stackoverflow.com/questions/50830627
复制相似问题