Я пытаюсь автоматически публиковать сообщения в своем блоге Tumblr (который будет запускаться ежедневно через Cron)
Я использую официальную библиотеку PHP Tumblr здесь: https://github.com/tumblr/tumblr.php
И используя описанный здесь метод проверки подлинности: https://github.com/tumblr/tumblr.php/wiki/Authentication (или части этого, поскольку мне не нужен пользовательский ввод!)
У меня есть код ниже
require_once('vendor/autoload.php');
// some variables that will be pretttty useful
$consumerKey = 'MY-CONSUMER-KEY';
$consumerSecret = 'MY-CONSUMER-SECRET';
$client = new Tumblr\API\Client($consumerKey, $consumerSecret);
$requestHandler = $client->getRequestHandler();
$blogName = 'MY-BLOG-NAME';
$requestHandler->setBaseUrl('https://www.tumblr.com/');
// start the old gal up
$resp = $requestHandler->request('POST', 'oauth/request_token', array());
// get the oauth_token
$out = $result = $resp->body;
$data = array();
parse_str($out, $data);
// set the token
$client->setToken($data['oauth_token'], $data['oauth_token_secret']);
// change the baseURL so that we can use the desired Methods
$client->getRequestHandler()->setBaseUrl('http://api.tumblr.com');
// build the $postData into an array
$postData = array('title' => 'test title', 'body' => 'test body');
// call the creatPost function to post the $postData
$client->createPost($blogName, $postData);
Однако это дает мне следующую ошибку:
Неустранимая ошибка: Невозможно использовать Tumblr\API\RequestException: [401]: Не Авторизованный бросок /home/// */vendor/tumblr/tumblr/lib/Tumblr/API/Client.php на линии 426
Я могу получать сообщения в блогах и другие данные с помощью (пример):
echo '<pre>';
print_r( $client->getBlogPosts($blogName, $options = null) );
echo '</pre>';
Итак, кажется, что это просто сообщение, которое я не могу справиться.
Честно говоря, я действительно не понимаю аутентификацию oauth, поэтому я использую код, который более достойные кодировщики любезно предоставили бесплатно:-) Я предполагаю, что я в порядке, чтобы отредактировать части https://github.com/tumblr/tumblr.php/wiki/Authentication, так как мне не нужен пользовательский ввод, так как это будет просто запуск кода прямо с моего сервера (через Cron)
Я потратил дни, оглядываясь по интернету за некоторыми ответами (получил немного дальше), но я полностью застрял на этом...
Любые советы очень ценятся!