2012-06-28 4 views
0

Я использую OAuth :: выборки() пример в PHP.net (Outh code трески я используюPHP класс OAuth апи

<?PHP 
try{ 
$oauth = new OAuth("consumer_key","consumer_secret",OAUTH_SIG_METHOD_HMACSHA1,OAUTH_AUTH_TYPE_AUTHORIZATION); 
$oauth->setToken("access_token","access_token_secret"); 

$oauth->fetch("http://photos.example.net/photo?file=vacation.jpg"); 

$response_info = $oauth->getLastResponseInfo(); 
header("Content-Type: {$response_info["content_type"]}"); 
echo $oauth->getLastResponse(); 
} catch(OAuthException $E) { 
echo "Exception caught!\n"; 
}?> 

Сообщение об ошибке

Фатальная ошибка: Class «OAuth 'не найден в C: \ wamp \ www \ Jesvin \ MyTest1 \ test1.php в строке 3

ответ

3

У вас нет класса OAuth, доступного для использования. Это расширение php, а не часть основного пакета, вы нужно будет установить его вручную в wamp. Первое, что нужно сделать, это проверить, доступно ли расширение, но не загружено.

Ваша библиотека расширений php будет что-то вроде/path/to/wamp/php/ext (я не использую wamp, поэтому вам придется искать Google для своего пути или искать себя в своей файловой системе).

Если вы видите расширение oauth, вы можете пропустить установку oauth, если вам не нужна предварительная компиляция dll, посмотрите здесь: http://downloads.php.net/pierre/ и обратитесь к «oauth», есть 2 (не знаете, какой из них вам нужен используйте, поэтому выберите один, и если он не работает, попробуйте другой).

Скачайте его и вставьте dll в свой каталог расширений вместе с другими расширениями php.

Затем найдите файл php.ini (вы можете использовать файл с <?php phpinfo; ?> и загрузить его в своем браузере, чтобы узнать, где находится php.ini). Найти, где расширения определены и либо раскомментировать или добавить эту строку в файл php.ini

extension=php_oauth.dll

обеспечить Dll имя в приведенном выше коде Teh же, как вы загрузили и установили в папку расширения , Также убедитесь, что в начале этой строки есть NO.

Это должно было сделать это. Надеюсь, что php загрузит DLL-файл, и он будет работать. Использование pre-comiled dll не всегда работает, но в этом случае он, надеюсь, будет работать.

+0

Любая альтернатива, если у вас нет доступа к установке чего-либо на вашем хост-сервере? Например, внешняя библиотека для запуска OAuth? – samyb8

+0

@ samyb8 Есть несколько чистых реализаций PHP, которые являются только классами PHP, но большинство из них - oAuth1, а не oAuth2, которые вы, вероятно, захотите. Большинство классов oAuth перестали поддерживаться после того, как «официальное» расширение было стабильным e.c.t. Однако вы всегда можете попробовать google, я не могу ручаться за код, поскольку я его никогда не использовал, но я нашел это: https://github.com/fkooman/php-oauth-client – Lee

Смежные вопросы