Использование OAuth с UserVoice API - PullRequest
0 голосов
/ 21 февраля 2012

В настоящее время я разрабатываю приложение для Facebook, в которое я хочу добавить форумы и предложения Uservoice

Мне удалось использовать API для добавления уже созданных форумов и предложений, но теперь я хочу позволить пользователю создавать / голосовать за предложения в рамках форума. В документации на UserVoice не приводятся примеры настройки приложения на PHP с Oauth.

Я новичок в теме OAuth, немного прочитал эту тему и понимаю основы работы OAuth, но я просто не знаю, как реализовать запросы в PHP. Любая помощь будет оценена

Спасибо

1 Ответ

2 голосов
/ 07 ноября 2012

Недавно мы работали над новой библиотекой UserVoice PHP . Следующий пример находит первый форум в вашей учетной записи UserVoice, публикует новое предложение как user@example.com, а затем обновляет счетчик голосов пользователей до 2 в том же предложении с использованием библиотеки:

<?php
    require_once('vendor/autoload.php');
    try {
        // Create a new UserVoice client for subdomain.uservoice.com
        $client = new \UserVoice\Client('subdomain', 'API KEY', 'API SECRET');

        // Get access token for user@example.com
        $token = $client->login_as('user@example.com');

        // Get the first accessible forum's id
        $forums = $token->get_collection('/api/v1/forums', array('limit' => 1));
        $forum_id = $forums[0]['id'];

        $result = $token->post("/api/v1/forums/$forum_id/suggestions", array(
                'suggestion' => array(
                    'title' => 'Move the green navbar to right',
                    'text' => 'Much better place for the green navbar',
                    'votes' => 1
                )
        ));
        $suggestion_id = $result['suggestion']['id'];
        $suggestion_url = $result['suggestion']['url'];

        print("See the suggestion at: $suggestion_url\n");

        // Change to two instead of one votes.
        $token->post("/api/v1/forums/$forum_id/suggestions/$suggestion_id/votes",
            array('to' => 2 )
        );
    } catch (\UserVoice\APIError $e) {
        print("Error: $e\n");
    }
?>

Обязательно включите uservoice / uservoice в ваш composer.json. Если вы не используете Composer, просто клонируйте проект из GitHub .

"require": {
    "uservoice/uservoice": "0.0.6"
}

Вам нужны OAuth и mcrypt PHP5 расширения.

Дополнительные примеры и инструкции по установке: http://developer.uservoice.com/docs/api/php-sdk/

...