使用本机 API (CreateInvalid) 使 Amazon CDN 失效,我使用的是 TCL 语言



我正在使用 AWS CDN 服务,并将其与我自己的源服务器链接。但是,我需要构建一个功能,以便在客户端更新内容后使文件失效。我看到 AWS 提供了这个 API

(创建失效(

POST /2019-03-26/distribution/DistributionId/invalidation HTTP/1.1
<?xml version="1.0" encoding="UTF-8"?>
<InvalidationBatch xmlns="http://cloudfront.amazonaws.com/doc/2019-03-26/">
<CallerReference>string</CallerReference>
<Paths>
<Items>
<Path>string</Path>
</Items>
<Quantity>integer</Quantity>
</Paths>
</InvalidationBatch>

参考: https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateInvalidation.html#API_CreateInvalidation_Errors

但是我不明白如何使用它,例如分发URL是什么以及日期(2019-03-26(指的是我没有在配置中添加任何日期,我只添加了我的Cname

还有主机名应该是什么?cloudfront.amazonaws.com 吗?还是我应该使用我的Cname

另外,什么是xmlns??是包含我需要失效的文件的目录路径吗?

而且他们没有提到任何关于授权的事情,我不应该使用密钥和访问密钥吗?

感谢任何帮助

但是我不明白如何使用它,例如分发URL是什么以及日期(2019-03-26(指的是什么 我没有在配置中添加任何日期,我只添加了我的 Cname。

大多数路径是静态的(例如,日期只是 API 的版本(。您只需将"DistributionId"替换为您的分配 ID,您可以在 AWS 控制台的分配详细信息中找到该 ID。

还有主机名应该是什么?是 cloudfront.amazonaws.com 吗?还是我应该使用我的Cname。

是的,主机名为"cloudfront.amazonaws.com",因为这是 CloudFront 的 API 终端节点:Amazon CloudFront 终端节点和配额

另外,什么是xmlns??是包含我需要失效的文件的目录路径吗?

xmlns 只是关于 xml 本身的元信息,你可以忽略它。

不过,您必须声明路径才能失效,这是"><路径>字符串"中的"字符串"值。对于要使每个路径失效的路径,您必须添加另一个"><路径>字符串"。语法记录在此处:指定要失效的文件。您还需要将"整数"替换为您在"><数量>整数"中配置的路径量。

最后,您必须在每次调用时将"><调用者引用>字符串"中的"字符串"替换为唯一值,CloudFront 将忽略已收到调用者引用的调用。

而且他们没有提到任何关于授权的事情,我不应该使用密钥和访问密钥吗?

是的,但这不会是请求正文的一部分,而是标头的一部分。请参阅此页面(及其子页面(了解如何执行此操作:签署 AWS API 请求

最新更新