是否可以使用AMP-HTML邮件格式与服务器通信?我不认为它被记录的很好。有一些关于普通AMP-HTML的信息,但没有太多关于电子邮件的信息。
这是我想发的电子邮件。我想从我的服务器上获取的秘密字,而不是硬编码。
<!doctype html>
<html ⚡4email>
<head>
<meta charset="utf-8">
<script async src="https://cdn.ampproject.org/v0.js"></script>
<script async custom-element="amp-bind" src="https://cdn.ampproject.org/v0/amp-bind-0.1.js"></script>
<style amp4email-boilerplate>body{visibility:hidden}</style>
</head>
<body>
<!-- Store complex nested JSON data in <amp-state> elements. -->
<amp-state id="words">
<script type="application/json">
{
"SecretWord": "fetched"
}
</script>
</amp-state>
<p [text]="'Your word is: ' + currentWord + '.'">Click to show magic word</p>
<button on="tap:AMP.setState({currentWord: words['SecretWord']})">Show word</button>
</body>
</html>发布于 2019-04-11 06:52:01
是的,没有太多关于AMP4Email的文档。最近,经过许多不成功的努力,我成功地使用AMP4Email完成了我的一个用例。
您可以参考以下示例来实现您的目标:
<!doctype html>
<html ⚡4email>
<head>
<meta charset="utf-8">
<script async src="https://cdn.ampproject.org/v0.js"></script>
<script async custom-element="amp-bind" src="https://cdn.ampproject.org/v0/amp-bind-0.1.js"></script>
<style amp4email-boilerplate>body{visibility:hidden}</style>
</head>
<body>
<amp-state id="fruits"
src="https://amp.dev/static/samples/json/related_products.json"></amp-state>
<p [text]="'My favorite fruit is : ' + favoriteFruit + '.'">Click to find my favorite fruit.</p>
<button on="tap:AMP.setState({favoriteFruit: fruits.items[0]['name']})">Show</button>
</body>
</html>我使用了ampproject.org的一个示例中的API,它返回一个水果的items的JSON。但是,您可以编写自己的API,只发送您最喜欢的单词。
为了编写您自己的服务,您必须非常小心地使用响应头。如果你寻找这个接口的响应头部,你会看到一些像access-...和amp-...这样的头部。如果您想在AMP4Email中使用您的接口/服务,这些头部是必需的。
必填的响应头部包括:
AMP-Access-Control-Allow-Source-Origin: <value received in __amp_source_origin query param for your service>
Access-Control-Expose-Headers: AMP-Access-Control-Allow-Source-Origin
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token
Access-Control-Allow-Origin: <origin, e.g. 'https://mail.google.com', if your service is hit from GMail inbox)PS:由GMail附加的__amp_source_origin报头。您将收到来自AMP4Email超文本标记语言的所有请求的此标头。
https://stackoverflow.com/questions/55374715
复制相似问题