簡體   English   中英

Discord.js web 頁面未登錄

[英]Discord.js web page not logging in

我有一個能夠工作的個人 discord.js 機器人和 function 在本地和我的樹莓派上正確部署。 但是,我試圖找出一種在 web 頁面中工作的方法,以允許管理員訪問運行功能,而無需通過 discord 客戶端輸入命令。 我從一個基本的 web 頁面開始,只有一個按鈕和一個腳本來登錄並向頻道發送消息。 但是,當嘗試發送消息時,我只收到錯誤“TypeError:client.channels.get 不是函數”。 我已確定我只是收到此錯誤,因為該機器人實際上並未登錄,但似乎無法弄清楚它未登錄的確切原因。

<!DOCTYPE html>
<html>
<head>

<script type="text/javascript" src="discord.12.5.1.min.js"></script>
<script type="text/javascript">
    
    
    function test() {
        try {
            const client = new Discord.Client();
            client.login('token');  // api token
            let channel = client.channels.get(channelid); //undeclared channel id
            channel.send("This is a test");
            document.getElementById("test").innerHTML = "Message sent";
        } catch (error) {
            document.getElementById("test").innerHTML = error;
        }
    }
    
</script>

</head>
<body>
<p id="test">Lorem Ipsum</p>
<button type="button" onclick="test()">Test</button>

</body>
</html>

編輯:我還將客戶端聲明和登錄移到了 test() function 之外,沒有不同的結果。

Edit2:意識到我在這個腳本中加載了 12.5.1,而不是我在其他地方使用的 11.6.3。 我嘗試使用較新的:client.cache.channels.get(channelid); TypeError:無法讀取未定義的屬性“通道”

以及 fetch>then>catch 不幸的是,我無法在瀏覽器中看到錯誤,但它沒有發送消息。

因此,我繼續從 v12 更改並在嘗試其他修復恢復更改后降至 11.6.4,並且我能夠解決它。 不理想,但會做我需要做的事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM