我这里有语法错误吗?
<script type="text/javascript">
async function showWidget(physicianId, locationId, format)
{
var response = await fetch('https://reviews.rater8.com/webwidget/api/ratingsummary/' + physicianId + '?format=' + format);
var snippet = await response.text();
document.getElementById(locationId).innerHTML = snippet;
}
</script>
此功能有效,您可以在以下页面看到实时页面:
https://reviews.rater8.com/webwidget/sample.html
但是,Google看不到通过该功能动态插入页面的内容。我使用Google Search Console来查看为什么,但发现Google标记网页时出现两个错误:
(即关键字“异步”之后的关键字“功能”。)
自然,如果不解析函数定义,则不会定义该函数。我可以通过删除关键字async来消除解析错误,但是该函数无法正确执行!
答案 0 :(得分:1)
这是在不使用javascript等待机制的情况下完成工作的方法。
<script type="text/javascript">
function showWidget(physicianId, locationId, format)
{
fetch('https://reviews.rater8.com/webwidget/api/ratingsummary/' + physicianId + '?format=' + format)
.then(function (response) {
response.text()
.then(function (snippet) {
document.getElementById(locationId).innerHTML = snippet;
})
})
}
</script>
Google可以查看通过这种方法生成的内容。