Macro

Пользователь
Сообщения
171
Решения
6
Веб-сайт
me.charmg.ru
Пишу свой сайт для сервера майнкрафт и столкнулся с проблемой вывода онлайна сервера.
Все казалось бы нормально, нашел много апи, которые справляются с этой задачей. Написал скрипт, который кидает запрос на api mcsrvstat.us и вытягивает из полученного json нужное значение. Вот только работает это дело через раз, проверил с vpn - оказалось дело в том, что апи отвечает очень долго или не отвечает совсем из-за локации. :mc_166-0:

Кто может подсказать русские апи для получения онлайна на сервере майнкрафт.
Буду очень благодарен! :mc_354-0:
 
Используйте любую библиотеку для query запросов, например (первое что нашёл по запросу "Minecraft query" в NPM):
 
Как я понял, то что ты предложил пишется на node.js. Я фреймворки не использую.
Тогда у тебя есть 3 варианта:
1. Всё-таки взять фреймворк (например какой-нибудь svelte который очень похож на чистый html)
2. Написать максимально простенькую апишку на ноде/питоне/... и захостить у себя, а на сайте его использовать
3. Использовать какой-нибудь сторонний апи типа mcsrvstat.us
 
Было бы хорошо, если бы ты написал, на чем пишешь сайт в целом.
У тебя там обычный хтмл и жс?
да, все по базе html css js
Объединено

Тогда у тебя есть 3 варианта:
1. Всё-таки взять фреймворк (например какой-нибудь svelte который очень похож на чистый html)
2. Написать максимально простенькую апишку на ноде/питоне/... и захостить у себя, а на сайте его использовать
3. Использовать какой-нибудь сторонний апи типа mcsrvstat.us
Для этого и была создана тема, ищу стороннее апи которое стабильно работает в РФ.
 
Последнее редактирование:
Ну ты можешь захостить мою штуку, которую я юзаю для распределенных проверок в одном из своих Telegram-ботов -
Она как раз умеет в проверки minecraft-серверов.

Либо, ты можешь взять:
 
Ну ты можешь захостить мою штуку, которую я юзаю для распределенных проверок в одном из своих Telegram-ботов -
Она как раз умеет в проверки minecraft-серверов.

Либо, ты можешь взять:
насчёт захотить штуку, это интересно.
а апи mcapi.us тоже плохо работает в РФ.
 
Пример api запроса на чистом js

JavaScript:
function getOnline(SERVER_IP) {
    fetch(`https://api.mcstatus.io/v2/status/java/${SERVER_IP}`)
      .then(response => response.json())
      .then(data => {
        if (data.online) {
          const ONLINE = data.players.online
          console.log('Онлайн: ' + ONLINE)
        }
      })
      .catch(error => {
        console.error('Произошла ошибка:', error);
      });
  }

getOnline('hub.holyworld.ru')
 
Последнее редактирование:
Пример api запроса на чистом js

JavaScript:
function getOnline(SERVER_IP) {
    fetch(`https://api.mcstatus.io/v2/status/java/${SERVER_IP}`)
      .then(response => response.json())
      .then(data => {
        if (data.online) {
          const ONLINE = data.players.online
          console.log('Онлайн: ' + ONLINE)
        }
      })
      .catch(error => {
        console.error('Произошла ошибка:', error);
      });
  }

getOnline('hub.holyworld.ru')
у меня не было проблем с использованием api. Я писал чтобы найти само апи, которое стабильно работает в рф
 
offtop и всё ещё непонятно почему ТС не хочет брать какой-нибудь веб фреймворк
Если я возьму какой нибудь бекенд фреймворк, его же нужно будет хостить отдельно, я правильно понимаю ?
 
Если я возьму какой нибудь бекенд фреймворк, его же нужно будет хостить отдельно, я правильно понимаю ?
Зависит от самого фреймворка. Например react/vue умеют собираться в статические файлы, которые спокойно можно хостить даже на бесплатных хостингах
 
Боже, люди, вы занимаетесь костылями

Ищешь на JS либу, которая шлет пакет запроса статуса на твой "myserver.ru:25565" и оно возвращает твой онлайн, часть списка игроков и MOTD
Если этой либы нет (по какой-то странной причине) вскрываешь любую версию майна, зыришь в пакетках как реализовано это и портируешь на JS
Ну либо ищешь спецификации протокола и ищешь там данный пакет, и делаешь реализацию на js без подсказок

Раньше у меня был костыльный вариант, который поднимает rest-api сервер внутри майна, и возвращает что мне надо

Все это без проблем можно затолкать в 1 монолитный index.html, который будет работать
 
Последнее редактирование:
Использование готовых API будет проблематичным, если они стоят за cloudflare, а твой хост в РФ
да, в этом и заключается вся проблема
Объединено

Боже, люди, вы занимаетесь костылями

Ищешь на JS либу, которая шлет пакет запроса статуса на твой "myserver.ru:25565" и оно возвращает твой онлайн, часть списка игроков и MOTD
Если этой либы нет (по какой-то странной причине) вскрываешь любую версию майна, зыришь в пакетках как реализовано это и портируешь на JS
Ну либо ищешь спецификации протокола и ищешь там данный пакет, и делаешь реализацию на js без подсказок

Раньше у меня был костыльный вариант, который поднимает rest-api сервер внутри майна, и возвращает что мне надо

Все это без проблем можно затолкать в 1 монолитный index.html, который будет работать
спасибо большое, я попробую.
 
Назад
Сверху Снизу