@YouTy6bl4

Как вывести статус сервера без стороннего сайта?

Добрый день, хотел узнать как вывести статус сервера без стороннего ajax(Без подключения к сайту неизвестного мне человека) и так же вопрос как вывести никнейм игроков в этом скрипте(Внизу), data.player_name не выводит ники.
var Monitoring = {
    //Подключение
    servers: [{address: "localhost:25565"}],//IP:PORT - сервера
    reset: function () {
        for (var i = 0; i < this.servers.length; i++) {
            this.servers[i].online = 0;
            this.servers[i].max_online = 0;
        }
    },
	//Обновление
    update: function () {
        this.reset();
        for (var i = 0; i < this.servers.length; i++)
        this.updateServerState(i);
    },
	//Получение данных
    updateServerState: function (serverId) {
        var server = this.servers[serverId];
        $.ajax({
            url: "http://jmc.url.ph/" + server.address,
            dataType: "json",
            type: "GET",
            success: function (data) {
                var html;
                html = (!data.error) ? Monitoring.onlineHtml(server, data) : Monitoring.offlineHtml(server, data);
                $("#server" + serverId).html(html);

                if (!data.error) {
                    server.online = 1 * data.player_online;
                    server.max_online = 1 * data.player_max;
                }
            },
            error: function (data) {
                // Шаблон ошибки
                $("#server" + serverId).html(error);
            }
        });
    },
    onlineHtml: function (server, data) {
        var online = "";
        // Шаблон выводится при успешном получении значений 
        online += '<div class="progress"><div class="count">' + data.player_online + '/' + data.player_max + '</div><div class="progress-bar" role="progressbar" style="width: ' + data.percent + '%;"></div></div>';
        return online;
    },
    offlineHtml: function (server, data) {
        var offline = "";
        // Шаблон выводится при неудаче (сервер находится оффлайн)
        offline += '<div class="progress"><div class="danger">Restart</div><div class="progress-bar-danger" role="progressbar" style="width:100%;"></div></div>';
        return offline;
    }
};

$(document).ready(function () {Monitoring.update();});
//Tick Timer Update
setInterval(function () {refresh();}, 2000);
//Update
function refresh() {Monitoring.reset(); setTimeout(function () { Monitoring.update();}, 2000);}
  • Вопрос задан
  • 2553 просмотра
Пригласить эксперта
Ответы на вопрос 1
@asdz
Так ведь не получится же - same origin policy
Вам надо со своего сервера аяксом получать данные о статусе. А ваш сервер должен самостоятельно опрашивать игровой сервер.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы