我已将示例AMP页面发布到heroku项目中;
http://boiling-garden-78683.herokuapp.com
然后我尝试使用以下curl命令来获取AMP缓存URL:
curl -i -s -k -X POST -H "Content-Type: application/json" -H "X-Goog-Api-Key:<MYKEY>" -d "{urls: ['http://boiling-garden-78683.herokuapp.com/']}" "https://acceleratedmobilepageurl.googleapis.com/v1/ampUrls:batchGet"
这个curl命令正在返回:
{
"urlErrors": [
{
"errorCode": "NO_AMP_URL",
"errorMessage": "No AMP URL for the request URL.",
"originalUrl": "http://boiling-garden-78683.herokuapp.com/"
}
]
}
我对AMP不了解什么?制作AMP页面的目的不是为了让我可以获得一个AMP URL给用户,而不是他们必须直接访问我的网站吗?
答案 0 :(得分:2)
您有两种选择:
等待Google抓取工具何时发现您的网页更改
只需通过“curl”进行此调用,或者只是使用浏览器进行链接:
curl https://cdn.ampproject.org/update-ping/c/s/boiling-garden-78683.herokuapp.com
然后您提供的API调用将返回您想要的内容;) 更新AMP缓存的机制(如果您的AMP有效,如果不在缓存中则会添加)将在此 Update AMP Content页面中进行说明。
答案 1 :(得分:0)
您也可以直接构建AMP缓存URL。逻辑很简单:删除协议(在这种情况下为http://
),并添加前缀https://cdn.ampproject.org/c/
。如果您的网页是通过https投放的,则可以使用https://cdn.ampproject.org/c/s/
。
但是,是的,您使用的API仅返回已经已缓存的结果。您可以使用Nick提供的update-ping
网址来填充缓存,然后它应该可以正常工作。