Как получить код iframe для частного видео с api dailymotion

Я хотел бы использовать api dailymotion, чтобы получить информацию о моих собственных видео.
ТАК …
У меня есть аккаунт Dailymotion
Я создал ключ API и секретный ключ
Я скачал класс PHP
Я хотел бы получить информацию о моих видео, чтобы показать это на моем сайте …

Поэтому я думаю, что мне нужно аутентифицировать свою учетную запись и после получения кода …
Но это не работает :'(
Пожалуйста, не могли бы вы дать мне пример кода для этого?

мой тестовый код сейчас такой

<?php
error_reporting(E_ALL & ~E_NOTICE);
ini_set('display_errors', 1);

$apiKey = 'xxxx';
$apiSecret = 'xxxx';
require_once 'Dailymotion.php';
// Instanciate the PHP SDK.
$api = new Dailymotion();

// Tell the SDK what kind of authentication you'd like to use.
// Because the SDK works with lazy authentication, no request is performed at this point.
$api->setGrantType(Dailymotion::GRANT_TYPE_AUTHORIZATION, $apiKey, $apiSecret);

$api = new Dailymotion();
try
{
$result = $api->get(
'/video/privateVideoId',
array('fields' => array('id', 'title', 'owner'))
);

}
catch (DailymotionAuthRequiredException $e)
{
echo $e->getMessage();
// If the SDK doesn't have any access token stored in memory, it tries to
// redirect the user to the Dailymotion authorization page for authentication.
//return header('Location: ' . $api->getAuthorizationUrl());
}
catch (DailymotionAuthRefusedException $e)
{
echo $e->getMessage();
// Handle the situation when the user refused to authorize and came back here.
// <YOUR CODE>
}

trace($result);

function trace($d) {
echo '<pre>';
var_dump($d);
echo '</pre>';
}
?>

и результат:
Этому пользователю не разрешен доступ к этому видео.

так что я думаю, что есть проблема с аутентификацией … но я не понимаю, как это сделать только с php

большое спасибо за вашу помощь

2

Решение

Похоже, что есть несколько проблем в вашем коде и способе аутентификации:

1) ваш код: звоните $api = new Dailymotion(); а затем установите тип разрешения авторизации с вашим ключом API и секретом. Но на следующей строке вы переопределяете все это, переписывая $api = new Dailymotion();, Поэтому я рекомендую вам удалить эту строку, иначе вы не установили тип гранта!

2) В php есть интересный пример кода типа авторизации, который делает именно то, что вы пытаетесь сделать, в https://developer.dailymotion.com/tools/sdks#sdk-php-grant-authorization
Ваш код очень похож, почему вы прокомментировали return header('Location: ' . $api->getAuthorizationUrl()); часть при ловле DailymotionAuthRequiredException ? Эта часть перенаправляет пользователя на страницу авторизации, чтобы он / она могли аутентифицироваться.
Я также рекомендую взглянуть на другие типы разрешений для аутентификации, такие как тип предоставления пароля (https://developer.dailymotion.com/tools/sdks#sdk-php-grant-password)

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]