Php 获取错误“;无效的“U客户端”;关于用户身份验证的Vimeo API
我试图通过Vimeo验证一个用户,以便在网站上查看他们的视频列表 在代码中包含Vimeo php库时,我使用的库没有错误 我获得了身份验证URL,并且能够导航到Vimeo上的允许应用程序访问页面,当我单击“允许”时,我在重定向页面上得到了“无效客户端”错误,即使他们在$get中发回了代码 在这一点上,我完全感到困惑,因为我已经有了官方的API库,并且据我所知,应用程序设置正确。我希望有人能给我指出正确的方向,告诉我为什么会出现这个错误以及如何修复它 我的代码:Php 获取错误“;无效的“U客户端”;关于用户身份验证的Vimeo API,php,vimeo,Php,Vimeo,我试图通过Vimeo验证一个用户,以便在网站上查看他们的视频列表 在代码中包含Vimeo php库时,我使用的库没有错误 我获得了身份验证URL,并且能够导航到Vimeo上的允许应用程序访问页面,当我单击“允许”时,我在重定向页面上得到了“无效客户端”错误,即使他们在$get中发回了代码 在这一点上,我完全感到困惑,因为我已经有了官方的API库,并且据我所知,应用程序设置正确。我希望有人能给我指出正确的方向,告诉我为什么会出现这个错误以及如何修复它 我的代码: //init Vimeo requ
//init Vimeo
require_once("modules/classes/Vimeo/autoload.php");
$lib = new \Vimeo\Vimeo($vimeo_id, $vimeo_secret, $vimeo_access);
if(!isset($_SESSION['vstate'])){
$_SESSION['vstate'] = base64_encode(openssl_random_pseudo_bytes(30));
}
$vimeo_authurl = $lib->buildAuthorizationEndpoint($redirecturi,'public private',$_SESSION['vstate']);
if(isset($_GET['code'])){
echo "Code returned: ".$_GET['code'];
if ($_SESSION['vstate'] != $_GET['state']) {
echo 'Something is wrong. Vimeo sent back a different state than this script was expecting. Please let an administrator know that this has happened.';
}
$tokens = $lib->accessToken($_GET['code'], $redirecturi);
if ($tokens['status'] == 200) {
echo 'Vimeo account successfully connected!';
$_SESSION['access_token'] = $tokens['body']['access_token'];
$lib->setToken($token['body']['access_token']);
} else {
echo 'Sorry, we were unable to connect to your Vimeo account due to the following error:<br/>{'.$tokens['body']['error']."} ".$tokens['body']['error_description'];
}
echo "<br/><br/><pre>";
print_r($tokens);
echo "</pre>";
exit();
}
所以我不确定为什么,但我创建了一个新的应用程序,具有相同的详细信息,这个新应用程序似乎可以进行身份验证
我遇到问题的第一个应用程序最初发送了上传访问请求,但被拒绝(由于本地测试链接),因此这可能是“无效客户端”错误的根本问题。我建议直接联系Vimeo,尝试确定发生了什么。在您的邮件中向他们引用此StackOverflow线程:单击顶部的“联系我们”。
Array
(
[body] => Array
(
[error] => invalid_client
[error_description] => A valid client ID must be provided along with any request made to Vimeo's API
)
[status] => 400
[headers] => Array
(
[Server] => nginx
[Content-Type] => application/json
[Expires] => Fri, 10 Mar 2017 03:11:17 GMT
[Cache-Control] => no-store
[Strict-Transport-Security] => max-age=15552000; includeSubDomains; preload
[Pragma] => no-cache
[X-UA-Compatible] => IE=edge
[X-XSS-Protection] => 1; mode=block
[X-Content-Type-Options] => nosniff
[X-Frame-Options] => sameorigin
[Content-Security-Policy-Report-Only] => default-src https: data: blob: 'unsafe-inline' 'unsafe-eval'; report-uri /_csp
[Accept-Ranges] => bytes
[Via] => 1.1 varnish
[Fastly-Debug-Digest] => 5da2a3ac863afd5f2ad0963779e0dbc4c54c7d97d19f87fd227c5eb8c92bd621
[Content-Length] => 126
[Date] => Fri, 10 Mar 2017 15:11:17 GMT
[Connection] => keep-alive
[X-Served-By] => cache-iad2146-IAD, cache-ord1731-ORD
[X-Cache] => MISS, MISS
[X-Cache-Hits] => 0, 0
[X-Timer] => S1489158677.346607,VS0,VE55
[Vary] => Accept,Vimeo-Client-Id,Accept-Encoding,User-Agent
)
)