Как можно отображать информацию о серверах Discord онлайн на веб-сайте с использованием HTML/CSS/JS/PHP?

Каким образом можно вывести на сайте онлайн-статус сервера Discord с использованием JavaScript или PHP?
  • 4 ноября 2023 г. 2:38
Ответы на вопрос 1
Есть несколько способов отобразить информацию о серверах Discord на веб-сайте, используя HTML/CSS/JS/PHP. 

Первый способ - использование Discord API. Используя Discord API, вы можете получить информацию о серверах, включая их онлайн-статус. Для этого вам понадобится токен бота Discord, с помощью которого вы сможете получить доступ к API. 

С использованием JavaScript:

1. Создайте бота на сайте разработчика Discord и получите его токен.
2. В вашем HTML-файле добавьте элемент, в котором будет отображаться онлайн-статус сервера Discord: 
    ```html
    <div id="serverStatus"></div>
    ```
3. В вашем JavaScript-файле выполните запрос к Discord API, используя токен бота и ID сервера:
    ```javascript
    const serverId = "YOUR_SERVER_ID";
    const token = "YOUR_BOT_TOKEN";

    fetch(`https://discord.com/api/v9/guilds/${serverId}/preview`, {
        headers: {
            Authorization: `Bot ${token}`,
        },
    })
    .then(response => response.json())
    .then(data => {
        const serverStatusElement = document.getElementById("serverStatus");
        serverStatusElement.textContent = data.approximate_presence_count > 0 ? "Online" : "Offline";
    })
    .catch(error => {
        console.error(error);
    });
    ```

С использованием PHP:

1. Создайте бота на сайте разработчика Discord и получите его токен.
2. Создайте PHP-файл (например, `discord_server_status.php`), в котором будет выполняться запрос к Discord API и возвращаться онлайн-статус сервера как результат.
    ```php
    <?php
    $serverId = "YOUR_SERVER_ID";
    $token = "YOUR_BOT_TOKEN";

    $url = "https://discord.com/api/v9/guilds/{$serverId}/preview";

    $options = [
        "http" => [
            "header" => "Authorization: Bot {$token}"
        ]
    ];

    $context = stream_context_create($options);
    $response = file_get_contents($url, false, $context);

    if ($response === false) {
        echo "Offline";
    } else {
        $data = json_decode($response);
        echo $data->approximate_presence_count > 0 ? "Online" : "Offline";
    }
    ?>
    ```
3. В вашем HTML-файле добавьте элемент, в котором будет отображаться результат выполнения PHP-скрипта: 
    ```html
    <div id="serverStatus">
        <?php include 'discord_server_status.php'; ?>
    </div>
    ```

Оба этих метода предполагают, что у вас есть ID сервера Discord, которое вы хотите отслеживать. Вы можете заменить `"YOUR_SERVER_ID"` на реальный ID вашего сервера в коде JavaScript или PHP. Обратите внимание, что использование бота Discord API подразумевает сохранение токена бота в безопасности.
Похожие вопросы