Graphql / dev :: joyreactor api :: реактор

dev реактор joyreactor api 

Graphql

Переделываю парсер под Graphql, возникла нехватка такого функционала, как получить информацию сразу по нескольким постам.
node(id: base64_encode('Post:ИдПоста')...) возвращает один пост. Может, не до конца вкуриваю в graphql, но как понимаю, этим функционалом не запросить посты по нескольким id.
Это создаёт проблему проверки уже размещённых постов на факт изменений. Проблему во времени. Даже вкупе с http://joyreactor.cc/api/changedPosts возникает необходимость парсить (ну как минимум делать запрос на данные поста) аж 300 постов, размещённых за последние сутки. Причём, вроде как, посты могут редактироваться и более, чем через сутки после размещения. Прибавляя время на хеширование картинок и пересоздание индекса получается обновление вместо старых добрых 5 минут - минут 20-30. При этом, не факт, что меняется картинка у поста. В итоге производится куча бесполезных graphql-запросов.
Возможен ли допил api для получения нескольких постов по id? Или же дальше биться с авторизацией?

Подробнее
dev,реактор,joyreactor api
Еще на тему
Развернуть
Извини что не совсем по теме, но твой баянометр не хочет принимать файлы больше 1мб если загружать их напрямую с компа а если использовать ссылку то принимает без проблем. Это собственно баг или фича?
Nox7662 Nox7662 21.02.202100:16 ответить ссылка 0.1
Фича после переезда на новый сервер. Сделал 500мб.
ух-ты, у реактора апи есть
Вот так можно запрашивать несколько постов один запросом. Так же можно просто посылать несколько json-массивов, он их будет обрабатывать.
nodel:node(id: "UG9zdDo0Njk2MzU3") { ... on Post { id
user { username
}
}
}
node2:node(id: "UG9zdDo0Njk2MTgw”) { ... on Post { id
user { username
}
}
}
}
{
"data": {
"nodel": {
"id": "UG 9 zd Do 0Nj k2MzU3", "user": {
"username": "KoMaTo3"
}
}•
"node2": {
"id":
koka koka 21.02.202101:29 ответить ссылка 1.1
янипониль
у тебя не тёмная тема в редакторе кода?
глаза не болят?
Да, у меня белая тема в редакторе кода. Потому что человеческий глаз лучше воспринимает чёрный текст на белом фоне.

Глаза не болят. Чтобы они не болели надо чтобы уровень освещённости компьютерного стола примерно совпадал с уровнем освещённости монитора. Если у тебя достигается это только при использовании тёмной темы, то либо повысь уровень освещённости стола путём добавления светильников, либо понизь уровень освещённости монитора путём уменьшения яркости.
koka koka 21.02.202110:34 ответить ссылка 0.4
Но у тебя не черный текст )
О, круть, спасибо.
Marcell Marcell 22.02.202123:13 ответить ссылка 0.0
Вопрос в сторону: base64 это кодирование *текстовой* информации, не целых чисел. Вопрос: нахрена из целого id делать строчку "Post:ИдПоста", а затем её ещё и кодировать? Религия не позволяет оперировать целым id?
dadv dadv 22.02.202123:19 ответить ссылка 0.1
Если коротко, то особенность спецификации graphql, который советует иметь уникальный идентификатор для каждый сущности.
Вроде у каждого поста и так уникальный ID или я чего-то не понимаю.
Кроме постов, есть и другие сущности, например, юзеры.
Ну id должен быть уникальным, т.е. не должно быть возможно что у юзера и у поста один и тот же id. Т.е. для постов 'p_2222' и для юзверов 'u_2222'. Проще чем base64.
уникальный id это хорошо, но чем плох-то оригинальный реакторовский *целый* id поста, зачем его в base64 оборачивать?
dadv dadv 23.02.202107:10 ответить ссылка 0.1
Видимо, из-за того, что этим же запросом можно не только посты, но и прочие картинки-атрибуты получать, и их id могут пересекаться.
Помню где-то читал об этом, но точно не могу сказать, зачем оборачивать в base64. На ум приходит только инкапусуляция логики формирования айдишников, то есть чтобы клиент не знал о то как они формируются. Но в данном случае это, очевидно, не применимо.
Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты