我正在制作一个使用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的新手,因此非常感谢所有帮助。
答案 0 :(得分:0)
据我所知,大多数网络爬虫都不运行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