Discord opengraph 嵌入未从我的网站显示

Posted

技术标签:

【中文标题】Discord opengraph 嵌入未从我的网站显示【英文标题】:Discord opengraph embeds not showing up from my website 【发布时间】:2020-10-26 18:17:01 【问题描述】:

我正在制作一个采用 URL 参数的网站,然后根据它们相应地创建元标记。 Discord 没有显示任何嵌入。

代码如下:

<!DOCTYPE html>
<html>
    <script>
        function getUrlVars() 
            var vars = ;
            var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) 
                vars[key] = value;
            );
            return vars;
        
        
        var title = getUrlVars()["title"];
        var description = getUrlVars()["desc"];
        var color = getUrlVars()["color"];
        
        var td = document.createElement("meta");
        var tt = document.createElement("meta");
        var tc = document.createElement("meta");

        td.setAttribute("content", description);
        tt.setAttribute("content", title);
        tc.setAttribute("content", color);
        td.setAttribute("property", "og:description");
        tt.setAttribute("property", "og:title");
        tc.setAttribute("name", "theme-color");

        document.head.appendChild(td);
        document.head.appendChild(tt);
        document.head.appendChild(tc);
        
    </script>
</html> 

这是网站和结果:

如您所见,没有出现嵌入。 我对 HTML 和 DOM 比较陌生,因此感谢所有帮助。

【问题讨论】:

【参考方案1】:

据我所知,大多数网络爬虫并不运行 javascript,它们只是读取网站中的 HTML。

因此,您最好的选择是使用 php。这就是我使用“用户嵌入生成器”所做的

例如:

if(isset($_GET['title']) && !empty($_GET['title'])) 
    echo "<meta name='og:title' content='$_GET['title']' />";

// and so on with more open-graph tags

【讨论】:

以上是关于Discord opengraph 嵌入未从我的网站显示的主要内容,如果未能解决你的问题,请参考以下文章

“位置”权限未从我的应用程序的 iPhone 设置中删除

让我的 discord.js 机器人从我的计算机中的一组图像中发送一张随机图片

Discord.js - 如何复制其他机器人嵌入的一部分

使用 discord bot 可以将音频从我的 DAW 流式传输到 Discord 吗?

我将如何编写一个嵌入代码,从我有 URL 的一组图像中提供一个随机图像? (不和谐.py)

我的 discord.js 机器人的 sql 没有/不能从我的 sqlite3 db 定义一个表