以下の関数 (GWT) を使用して HTML メタタグを動的に作成しています。これを DOM に配置するのに 1 秒かかります。Facebook以外は正常に動作しています。Web からリンクを共有すると、スクレーパーは HTML にあるメタタグを取得します: なし。どうすればこれを修正できますか?
/**
* Include the HTML attributes: title, description and keywords (meta tags)
*/
private void createHTMLheader(MyClass thing) {
String title=thing.getTitle();
String description=thing.getDescription();
Document.get().setTitle(title);
MetaElement metaDesc = Document.get().createMetaElement();
metaDesc.setName("description");
metaDesc.setContent(description);
NodeList<Element> nodes = Document.get().getElementsByTagName("head");
nodes.getItem(0).appendChild(metaDesc);
}
これは、DOM 上の結果の HEAD です。タイトルaaaa
とメタディスクリプションが動的に読み込まれました。(ヒントをくれたCBroeに感謝します)。「ソースの表示」機能では、これらの動的タグは表示されません (開発者ツール - ビュー DOM のみ)。
<head>
<title>aaaa</title>
<meta content="text/html; charset=utf-8" http-equiv="content-type">
<meta name="description" content="My description">
<script language="javascript" type="text/javascript" src="dialective/dialective.nocache.js"></script><script defer="defer">dialective.onInjectionDone('dialective')</script>
</head>
元の HTML には、TITLE または META-DESCRIPTION タグがありません。