AWS Lambda 和 Google Drive Push Notification 集成可能吗?
AWS Lambda and Google Drive Push Notification integration possible?
如果通过 api 网关在 aws lambda 上编码,是否可以接收 google 驱动器推送通知?
Google 驱动器需要验证 webhook 地址,所以是否可以验证 api 网关端点?
以下是验证端点的可能方法:
1) 上传一个文件并通过/file 进行测试,其余如下:
好吧,这是google如何进行元标记验证的图像: 为了获得所需的验证元标记,我需要先输入我要验证的url/endpoint。所以下图显示了我创建的端点:
然后在站长这里验证url: 但是验证失败。
这是我添加的 python 代码
请指导我如何验证成功!
我不确定注册过程如何验证 webhook 地址,但肯定可以在 API 网关中配置 webhook 本身。
API 网关支持 custom domain names 如 api.example.com 如果 Google 不支持'接受默认的API域名。
编辑:
根据这些选项,您似乎可以使用默认端点 xxxx。execute-api...amazonaws.com 如果您配置 HTML 元标记。
您可以通过在我猜是 MOCK 集成的根资源上设置 GET 方法来做到这一点。该集成响应可以 return 静态内容,因此在集成响应部分中,您可以粘贴 HTML Google 正在寻找的任何内容。您可能还需要将响应 'Content-Type' header 设置为 'text/html'。
@Atihska,看来你已经设置了这个 API:
https://x8f3******.execute-api.us-east-1.amazonaws.com/prod/google-endpointverification
据我了解,Google Drive 的 HTML 标签验证方法将尝试验证 主页 中的元数据。根据Google,这里的主页是:
https://x8f3******.execute-api.us-east-1.amazonaws.com/
但是上面的 URL 将不起作用,因为它没有艺名(如 "prod")。
正确的做法是使用自定义域名。所以,你需要购买像 foodomain.com 这样的域名并使用 custom domain name option in API Gateway to point to your API. That way, you can make foodomain.com (home page) to point to https://x8f3******.execute-api.us-east-1.amazonaws.com/prod/google-endpointverification
此外,您可以简单地使用 Mock integration 而不是 Lambda,因为这只是静态内容。
@Balaji 我能够计算出我们的 API 映射,以便 link 带有 API 的自定义子域。但是当我使用 https://api.example.com 时,我得到 'Missing Authentication token',在本例中是 lambdanotifications..com。我还尝试了 lambdanotifications..com/notifications 和 lambdanotifications.***.com/notifications/test 在浏览器上但同样的事情。
我终于搞定了。
正如@Balaji 和@Jack Kohn 所提到的,我必须使用自定义域。我遵循了本教程 http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html
映射正文模板的最后一步在这里:
抱歉剪了这么多,但不得不隐藏提供的值。
如果通过 api 网关在 aws lambda 上编码,是否可以接收 google 驱动器推送通知? Google 驱动器需要验证 webhook 地址,所以是否可以验证 api 网关端点?
以下是验证端点的可能方法:
1) 上传一个文件并通过/file 进行测试,其余如下:
好吧,这是google如何进行元标记验证的图像: 为了获得所需的验证元标记,我需要先输入我要验证的url/endpoint。所以下图显示了我创建的端点:
然后在站长这里验证url: 但是验证失败。
这是我添加的 python 代码
请指导我如何验证成功!
我不确定注册过程如何验证 webhook 地址,但肯定可以在 API 网关中配置 webhook 本身。
API 网关支持 custom domain names 如 api.example.com 如果 Google 不支持'接受默认的API域名。
编辑:
根据这些选项,您似乎可以使用默认端点 xxxx。execute-api...amazonaws.com 如果您配置 HTML 元标记。
您可以通过在我猜是 MOCK 集成的根资源上设置 GET 方法来做到这一点。该集成响应可以 return 静态内容,因此在集成响应部分中,您可以粘贴 HTML Google 正在寻找的任何内容。您可能还需要将响应 'Content-Type' header 设置为 'text/html'。
@Atihska,看来你已经设置了这个 API:
https://x8f3******.execute-api.us-east-1.amazonaws.com/prod/google-endpointverification
据我了解,Google Drive 的 HTML 标签验证方法将尝试验证 主页 中的元数据。根据Google,这里的主页是:
https://x8f3******.execute-api.us-east-1.amazonaws.com/
但是上面的 URL 将不起作用,因为它没有艺名(如 "prod")。
正确的做法是使用自定义域名。所以,你需要购买像 foodomain.com 这样的域名并使用 custom domain name option in API Gateway to point to your API. That way, you can make foodomain.com (home page) to point to https://x8f3******.execute-api.us-east-1.amazonaws.com/prod/google-endpointverification
此外,您可以简单地使用 Mock integration 而不是 Lambda,因为这只是静态内容。
@Balaji 我能够计算出我们的 API 映射,以便 link 带有 API 的自定义子域。但是当我使用 https://api.example.com 时,我得到 'Missing Authentication token',在本例中是 lambdanotifications..com。我还尝试了 lambdanotifications..com/notifications 和 lambdanotifications.***.com/notifications/test 在浏览器上但同样的事情。
我终于搞定了。
正如@Balaji 和@Jack Kohn 所提到的,我必须使用自定义域。我遵循了本教程 http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html
映射正文模板的最后一步在这里:
抱歉剪了这么多,但不得不隐藏提供的值。