Ладно, твоя взяла. Добавил в fields init_post;
API MyBB
Сообщений 241 страница 260 из 282
Поделиться242Чт, 26 Ноя 2020 17:48:06
kernel, ура! Ты лучший!
Поделиться243Вс, 29 Ноя 2020 14:37:36
Методы для получения категорий и подфорумов планируется добавлять?
Кажется в 2012 году эти методы уже добавляли
10. Категории и форумы
Метод -> category.orderedList.get
Возвращает массив с инфой о категориях форума.
Сортировка по расположению категорий согласно настройкам в админке.
------------------------------------------------------------------------------------------------------Метод -> forums.orderedList.get
Возвращает массив с инфой о форумах в категории.
Сортировка по расположению форумов в категории согласно настройкам в админке.
Поделиться244Вс, 29 Ноя 2020 15:14:07
aloistest
По идее, проще закрепить ID категорий за их расположением, которое видит админ форума(и на Главной и в Админке), без изменений ID под юзерами не видящими часть категорий, тогда не нужны будут скрипты, проставляющие фоны к заголовкам скриптом по названию категорий(типично они уже со словании названия категории, и при установки по ID сейчас - смещаются при скрытии одной из них)
(Поскольку id категории меняется от доступа юзера к оным)
Тогда все фоны к ним можно ставить через стиль!
Отредактировано Deff (Вс, 29 Ноя 2020 15:17:33)
Поделиться245Вс, 29 Ноя 2020 15:58:14
Возможные баги.
GET forum.mybb.ru/api.php?method=topic.get&forum_id=2&sort_by=last_post&sort_dir=desc&limit=5
{
"response": [
{
"id": "30034",
"username": "RUSSIAN_GOBLIN",
"last_user_id": "22787",
"subject": "API MyBB",
"posted": "1331660486",
"forum_id": "2",
"num_replies": "243",
"num_views": "13964",
"closed": "0",
"sticky": "0",
"first_post": "0",
"last_post_id": "968243",
"last_post_date": "1606652047",
"last_username": "Deff"
},
{
"id": "39313",
"username": "Герда",
"last_user_id": "36307",
"subject": "Новые селекторы",
"posted": "1595841413",
"forum_id": "2",
"num_replies": "123",
"num_views": "6798",
"closed": "0",
"sticky": "0",
"first_post": "959879",
"last_post_id": "968208",
"last_post_date": "1606477966",
"last_username": "sims3society"
},
{
"id": "39620",
"username": "Hope13",
"last_user_id": "34591",
"subject": "Массовое удаление пользователей",
"posted": "1606456398",
"forum_id": "2",
"num_replies": "0",
"num_views": "103",
"closed": "0",
"sticky": "0",
"first_post": "0",
"last_post_id": "968200",
"last_post_date": "1606456398",
"last_username": "Hope13"
},
{
"id": "39390",
"username": "Герда",
"last_user_id": "16803",
"subject": "Администрирование > Файлы (все предложения о файлах в админке)",
"posted": "1597746757",
"forum_id": "2",
"num_replies": "32",
"num_views": "2358",
"closed": "0",
"sticky": "0",
"first_post": "962688",
"last_post_id": "968143",
"last_post_date": "1606394090",
"last_username": "Герда"
},
{
"id": "39486",
"username": "Герда",
"last_user_id": "15964",
"subject": "Форма ответа: видеотег",
"posted": "1600691931",
"forum_id": "2",
"num_replies": "39",
"num_views": "1225",
"closed": "0",
"sticky": "0",
"first_post": "0",
"last_post_id": "968123",
"last_post_date": "1606337924",
"last_username": "Romych"
}
]
}
Очень часто поле "first_post" равняется "0".
GET forum.mybb.ru/api.php?method=post.get&topic_id=30034&sort_by=last_post&sort_dir=desc&limit=5
{
"response": [
{
"id": "968243",
"username": "Deff",
"user_id": "22787",
"message": "<p><strong>aloistest</strong><br />По идее, проще закрепить ID категорий за их расположением, которое видит админ форума(и на Главной и в Админке), без изменений ID под юзерами не видящими часть категорий, тогда не нужны будут скрипты, проставляющие фоны к заголовкам скриптом по названию категорий(типично они уже со словании названия категории, и при установки по ID сейчас - смещаются при скрытии одной из них)<br />(Поскольку id категории меняется от доступа юзера к оным)</p>\n\t\t\t\t\t\t<p>Тогда все фоны к ним можно ставить через стиль!</p>",
"posted": "1606652047",
"topic_id": "30034",
"forum_id": "2",
"subject": "API MyBB",
"rating": "0",
"num_replies": "243",
"num_views": "13970"
},
{
"id": "968242",
"username": "aloistest",
"user_id": "37378",
"message": "<p>Методы для получения категорий и подфорумов планируется добавлять?<br /><a href=\"https://forum.mybb.ru/viewtopic.php?id=30034&p=7#p748499\">Кажется в 2012 году эти методы уже добавляли</a></p><div class=\"quote-box\"><cite>RUSSIAN_GOBLIN :</cite><blockquote><p><span style=\"font-size: 16px\">10. Категории и форумы</span></p>\n\t\t\t\t\t\t<p><span style=\"color: blue\">Метод</span> -> <span style=\"color: green\">category.orderedList.get</span></p>\n\t\t\t\t\t\t<p>Возвращает массив с инфой о категориях форума. <br />Сортировка по расположению категорий согласно настройкам в админке.<br />------------------------------------------------------------------------------------------------------</p>\n\t\t\t\t\t\t<p><span style=\"color: blue\">Метод</span> -> <span style=\"color: green\">forums.orderedList.get</span></p>\n\t\t\t\t\t\t<p>Возвращает массив с инфой о форумах в категории. <br />Сортировка по расположению форумов в категории согласно настройкам в админке.</p></blockquote></div>",
"posted": "1606649856",
"topic_id": "30034",
"forum_id": "2",
"subject": "API MyBB",
"rating": "0",
"num_replies": "243",
"num_views": "13970"
},
{
"id": "968153",
"username": "satsana",
"user_id": "35321",
"message": "<p><strong>kernel</strong>, ура! Ты лучший! </p>",
"posted": "1606402086",
"topic_id": "30034",
"forum_id": "2",
"subject": "API MyBB",
"rating": "0",
"num_replies": "243",
"num_views": "13970"
},
{
"id": "968152",
"username": "kernel",
"user_id": "2",
"message": "<p>Ладно, твоя взяла. Добавил в fields init_post;</p>",
"posted": "1606400603",
"topic_id": "30034",
"forum_id": "2",
"subject": "API MyBB",
"rating": "3",
"num_replies": "243",
"num_views": "13970"
},
{
"id": "968150",
"username": "satsana",
"user_id": "35321",
"message": "<div class=\"quote-box\"><cite>kernel :</cite><blockquote><p>таких ресурсоемких запросов</p></blockquote></div><p>А если не делать сортировку постов в топике через ORDER BY по времени (насколько я поняла, это один из самых ресурсоёмких запросов), а использовать функцию MIN(posts.id)? Всё равно ресурсоёмко?<br /><strong>Добавлено спустя 5 минут 32 секунды:</strong> Мне кажется, что это должно быть полегче для сервера, чем пара десятков запросов вида "/api.php?method=post.get&limit=1&topic_id=' + arr[i] + '&fields=id"...</p>",
"posted": "1606398546",
"topic_id": "30034",
"forum_id": "2",
"subject": "API MyBB",
"rating": "0",
"num_replies": "243",
"num_views": "13970"
}
]
}
Поля "num_replies", "num_views" и "subject" - это свойства постов, а не топиков (например "num_views" - это кол-во просмотров топика, но никак не поста).
Поделиться246Вс, 29 Ноя 2020 18:25:20
Очень часто поле "first_post" равняется "0".
Так и должно быть, 0 - значит нет закреплённого поста.
Поля "num_replies", "num_views" и "subject" - это свойства постов, а не топиков (например "num_views" - это кол-во просмотров топика, но никак не поста).
Так и есть. Однако, в некоторых скриптах удобнее получать эти свойства из постов, поэтому они дублируются в этих вызовах.
Методы для получения категорий и подфорумов планируется добавлять?
Кажется в 2012 году эти методы уже добавляли
Не добавляли, это был запрос на добавление. Вероятно, в будущем добавлю.
Поделиться247Пн, 30 Ноя 2020 15:39:53
проще закрепить ID категорий за их расположением
Тогда все фоны к ним можно ставить через стиль!
доброе утро. уже сделали классы для категорий.
https://forumd.ru/viewtopic.php?id=6250&p=4#p140200
Поделиться248Сб, 16 Янв 2021 13:38:11
Доброго дня, подскажите начинающему разбираться в api: только сегодня ночью-утром с помощью
...topic.get&forum_id=14...
Выводилась выборка по по указанному форуму, а теперь в результате отдает при установке этого параметра
{"error":{"code":"400","message":"Filters are not set"}}
если его убрать, оставив все прочие параметры (их там еще штуки 3-4), то всё прекрасно. Какая-то проблема может быть у меня или этот параметр по какой-то причине отвалился?
Поделиться249Сб, 16 Янв 2021 14:24:13
Sachimot
Ну по идее выложите полный запрос, раз проблема в фильтрах...
2-е Форумы - Темы не перемещали - не изменяли ?
Поделиться250Сб, 16 Янв 2021 14:28:55
Deff
я даже тут пробую, на форуме поддержки, и ничего...
Вот, как пример, хочу получить дату и id последних постов из тем данного форума "Сделаем сервис лучше", его id=2
Так выдает ошибку, которая выше
http://forum.mybb.ru/api.php?method=topic.get&forum_id=2&sort_by=last_post&sort_dir=desc&fields=last_post_date,last_post_id,forum_id
Стоит только убрать параметр forum_id
http://forum.mybb.ru/api.php?method=topic.get&sort_by=last_post&sort_dir=desc&fields=last_post_date,last_post_id,forum_id
Как результат выдаётся, но уже по всем форумам, т.е. его придется дополнительно обрабатывать. А хочется получить нужно и сразу...
Поделиться251Сб, 16 Янв 2021 14:43:44
Sachimot
Ну наверно только ждать кернель... У меня тот же эффект
Поделиться252Сб, 16 Янв 2021 14:46:15
Deff
ну что же, подождем) А пока можно потренироваться и на кошках других методах
Поделиться253Сб, 16 Янв 2021 14:48:38
Sachimot
По идее аяксом можно вытащить по запросу самого форума Дату и Id http://forum.mybb.ru/viewforum.php?id=2 (Правда дату придётся трансформировать, если надо числом миллисекунд
Отредактировано Deff (Сб, 16 Янв 2021 14:49:14)
Поделиться254Сб, 16 Янв 2021 17:27:54
Исправил.
Поделиться255Ср, 26 Май 2021 23:09:41
Привет!
Проблема следующая. Отправляю такой запрос: http://flot.spybb.ru/api.php?method=pos … opic_id=26 Через браузер ответ приходит, всё как ожидаю. Отправляю точно такой-же запрос из питоновского скрипта:
resp = requests.get('http://flot.spybb.ru/api.php?method=post.get&topic_id=26') print(resp.status_code) print(resp.json())
Ответ приходит с кодом 200, но при этом пустой: {'response': []}
Я так понимаю, что в браузере я залогинился и в куках уже всё прописано. А как быть с питоном, чего не хватает в моем запросе?
Нашел команду board.auth, которая возвращает hash. Предполагаю, что его можно как-то использовать в качестве токена, но не нашел, как его прикрутить к запросу (как должен называться параметр).
И было бы круто, если бы информация об аутентификации появилась бы в описании API.
Поделиться256Ср, 26 Май 2021 23:12:42
Haamu
Тема #26 закрыта от гостей.
Используйте board.auth для авторизации
Поделиться257Ср, 26 Май 2021 23:17:08
Используйте board.auth для авторизации
Можно поподробнее?
Нашел команду board.auth, которая возвращает hash. Предполагаю, что его можно как-то использовать в качестве токена, но не нашел, как его прикрутить к запросу (как должен называться параметр).
Поделиться258Ср, 26 Май 2021 23:22:39
Haamu
Да, я немного поторопился с ответом.
hash, который возвращается в board.auth, нужно установить как cookie с именем "mybb_ru" (без кавычек)
Поделиться259Ср, 26 Май 2021 23:35:42
kozhilya, спасибо! Всё получилось)
Возможно кому-то пригодится:
auth_url = 'http://FORUM.spybb.ru/api.php?method=board.auth&login=LOGIN&password=PASSWORD' auth_resp = requests.get(auth_url) url = 'http://FORUM.spybb.ru/api.php?method=post.get&topic_id=XXX' cookies = {'mybb_ru': auth_resp.json()['response']['hash']} resp = requests.get(url, cookies=cookies)
Поделиться260Вс, 4 Июн 2023 10:25:13
Всем привет. Что-то я, кажется, после ковида совсем кодить разучилась. : (
$.ajax({ url: location.origin + '/api.php', data: { method: 'storage.set', key: 'myHiddenMessages', token: ForumAPITicket, value: '' }, success: function(res) { console.log(res); } });
Что я сделала не так? Каких ещё фильтров он от меня хочет?
Отредактировано satsana (Вс, 4 Июн 2023 10:25:43)