REST API для stocktwits.com в R - PullRequest
0 голосов
/ 26 марта 2020

Я весь день ломал голову над этим. Я пытаюсь получить доступ к API StockTwits (https://api.stocktwits.com/developers) из сеанса R. Ранее я без проблем обращался к Twitter API (через rtweet).

Я создал приложение и получил идентификатор клиента и ключ (ниже приведены только примеры).

app_name = "some.name";
consumer_key = "my_client_id";
consumer_secret = "my_client_key";
uri = "http://iimb.ac.in" # this is my institute's homepage. It doesn't allow locahost OR 127.0.0.1
scope = "read,watch_lists,publish_messages,publish_watch_lists,direct_messages,follow_users,follow_stocks";
base_url = "https://api.stocktwits.com/api/2/oauth"; # see https://api.stocktwits.com/developers/docs/api

Процедура заключается в создании приложения и конечной точки oauth2.0. Затем позвоните по номеру oauth2.0_token.

oa = httr::oauth_app(app_name, key = consumer_key, secret = consumer_secret, redirect_uri = uri);

oe = httr::oauth_endpoint("stocktwits", "authorize", "token", base_url = base_url);

mytoken = httr::oauth2.0_token(oe, oa, user_params = list(resource = base_url), use_oob = F); # use_oob = T doesn't work.

. После запуска вышеизложенного я перехожу в браузер для входа. Я вхожу в систему, и он просит меня подключиться. После этого я возвращаюсь к своему URI плюс код, то есть https://www.iimb.ac.in/?code=295ea3114c3d8680a0ed295d52313d7092dd90ae&state=j9jXzEqri1

Является ли код моим токеном доступа или чем-то еще? Вызов oauth2.0_token() продолжает ожидать код, поскольку обратный вызов не является localhost. Кажется, я этого не понимал.

Затем я пытаюсь получить доступ к API, используя приведенный выше код в качестве токена доступа, но меня сбрасывает " неверный токен доступа "ошибка. Формат описан в https://api.stocktwits.com/developers/docs/api#search -index-docs

Может кто-нибудь сказать мне, что я пропустил? При необходимости я могу поделиться своими app_name, consumer_key и consumer_secret для репликации.

...