.NET не может пройти мимо «неверных данных аутентификации» Twitter API 1.1

1

Попытка использовать API Twitter 1.1 для простого чтения/поиска твитов. Для жизни я не могу аутентифицироваться против API. Я создал приложение Twitter через apps.twitter.com, прочитал документацию и подумал, что я проверю это из Postman REST Client. Перенесен во все мои токены на вкладку OAuth 1.0 и получил страшное {"message": "Bad Authentication data","code":215}

Двойной проверял все и все те же ошибки. Прочтите дополнительную документацию и убедитесь, что для проверки подлинности на основе приложения необходимо пройти через OAuth 2.0. Пробовал это еще одно сообщение Bad Authentication.

Поскольку я буду делать это в .NET я решил, почему бы не попробовать пример приложения. Далее следуют этапы здесь построить запрос OAuth. Результат - еще 401 ответ.

Просмотрел предложенные библиотеки на веб-сайте Twitter для .NET и нашел Tweetinvi. Их документация была достаточно простой. Выполнение простого фрагмента библиотеки:

var credentials = TwitterCredentials.CreateCredentials("Access_Token", "Access_Token_Secret", "Consumer_Key", "Consumer_Secret");
TwitterCredentials.ExecuteOperationWithCredentials(credentials, () =>
{
    Tweet.PublishTweet("myTweet");
});

также был бесплодным. На данный момент у меня все, но сдался. Что-то столь же тривиальное, как вызов API, оставило меня безмолвным.

Документация обширна и надежна, но это оказалось трудно понять. Возможно ли что-то, что мне нужно сделать с моей фактической учетной записью Twitter, а не с твиттер-приложением?

Если это помогает решить мою проблему, мое приложение настроено Read Only разрешений " Read Only для Read Only.

  • 1
    Вы пробовали код именно так, как вы пишете в вопросе?
  • 0
    @faby Да, кроме того факта, что я заменил Access_Token_Secret и т. д. фактическими значениями ключей.
Показать ещё 2 комментария
Теги:
twitter
oauth

1 ответ

2
Лучший ответ

Как я вижу, вы пытаетесь опубликовать твит с этим кодом:

var credentials = TwitterCredentials.CreateCredentials("Access_Token", "Access_Token_Secret", "Consumer_Key", "Consumer_Secret");
TwitterCredentials.ExecuteOperationWithCredentials(credentials, () =>
{
    Tweet.PublishTweet("myTweet");
});

Но в то же время вы говорите, что ваше приложение настроено для разрешений только для чтения. Опубликовать твиты нужны другие разрешения.

  • 0
    Ух ты. Я не спал всю ночь, пытаясь понять это. Вы случайно не знаете, почему я не смогу прочитать API с помощью метода GET в Postman Client - https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=twitterapi&count=2

Ещё вопросы

Сообщество Overcoder
Наверх
Меню