【发布时间】:2018-03-15 06:15:25
【问题描述】:
我刚刚安装了opentok最新的php sdk。
我无法创建会话,这非常令人沮丧。
我知道 SDK 已正确导入,因为我的第一次调用有效。这是我的代码。
<?PHP
require("./../classes/opentok.phar");
use OpenTok\OpenTok;
use OpenTok\Session;
use OpenTok\Role;
use OpenTok\MediaMode;
$API_KEY = '45972332';
$API_SECRET = 'HIDDEN_FOR_MY_PROTECTION';
$apiObj = new OpenTok($API_KEY, $API_SECRET);
var_dump($apiObj); // this returned successful data.
$session = $apiObj->createSession(array('mediaMode' =>
MediaMode::RELAYED)); // this errors out the script.
?>
这是它返回给我的错误。
致命错误:未捕获的异常“Guzzle\Http\Exception\ClientErrorResponseException”,在 phar:///var/www/ 中带有消息“客户端错误响应 [状态代码] 403 [原因短语] 禁止 [url] https://api.opentok.com/session/create” html/API/classes/opentok.phar/vendor/guzzle/guzzle/src/Guzzle/Http/Exception/BadResponseException.php:43
堆栈跟踪:
#0 phar:///var/www/html/API/classes/opentok.phar/vendor/guzzle/guzzle/src/Guzzle/Http/Message/Request.php(145): Guzzle\Http\Exception\BadResponseException: :factory(对象(Guzzle\Http\Message\EntityEnclosureRequest), 对象(Guzzle\Http\Message\Response))
#1 [内部函数]:Guzzle\Http\Message\Request::onRequestError(Object(Guzzle\Common\Event), 'request.error', Object(Symfony\Component\EventDispatcher\EventDispatcher))
#2 phar:///var/www/html/API/classes/opentok.phar/vendor/symfony/event-dispatcher/EventDispatcher.php(184): call_user_func(Array, Object(Guzzle\Common\Event), ' request.error', Object(Symfony\Component\EventDispatcher\EventDispatcher))
#3 phar:///var/www/html/API/ in phar:///var/www/html/API/classes/opentok.phar/vendor/guzzle/guzzle/src/Guzzle/Http/Exception/BadResponseException .php 在第 43 行
【问题讨论】:
-
我也试过了: $session = $apiObj->createSession();也是。同样的事情。
-
403 响应表明您的凭据无效。
-
谢谢菲尔。我 100% 确信我已检索到正确的 api 密钥和秘密。我什至删除并重新创建了一个新项目以获取新密钥并通过。仍然不是他同样的结果。还有其他想法吗?
-
@Phil 忘记标记了。谢谢
-
您将项目创建为“标准 SDK”还是“嵌入”?