【问题标题】:How to open an URL on client side from AWS Lambda?如何从 AWS Lambda 在客户端打开 URL?
【发布时间】:2019-12-18 08:07:04
【问题描述】:

我正在尝试使用 python 将 tableau 与 Alexa 集成。这将允许人们使用语音命令导航 Tableau 报告。基于语音命令 lambda 脚本 (python) 将使用过滤器创建一个画面服务器 URL。它必须在窗口中向用户打开 URL。我在这里不需要可点击的链接,而是应该在用户向 Alexa 提供一些输入时直接打开画面。

我已经开发了现在基于用户输入创建 URL 的 python 脚本。但我找不到打开相同 URL 的方法。谁能帮我解决这个问题?这里有哪些可能的解决方案?(webbroswer、urllib 等 python 包不起作用)。

import webbrowser
def lambda_handler(event, context):
    url='http://www.google.com'
    webbrowser.open_new(url)

我希望在新的浏览器窗口中打开 URL。但我没有完成它。

【问题讨论】:

  • 你想从 lambda 函数打开那个 URL 吗?

标签: python amazon-web-services aws-lambda alexa


【解决方案1】:

您很可能需要创建一个 lambda 层来导入您要使用的 webbrowser 包。对于 HTTP 客户端,我推荐 Requests (https://realpython.com/python-requests/)。

以下是如何使用 lambda 层的示例:https://medium.com/@adhorn/getting-started-with-aws-lambda-layers-for-python-6e10b1f9a5d

lambda 层的文档:https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html

层是包含库、自定义运行时或其他依赖项的 ZIP 存档。使用层,您可以在函数中使用库,而无需将它们包含在部署包中。

【讨论】:

  • 导入包没有问题。由于 lambda 是无服务器平台,我们无法直接与本地系统交互。
猜你喜欢
  • 2021-08-16
  • 1970-01-01
  • 2019-04-15
  • 2015-09-22
  • 1970-01-01
  • 1970-01-01
  • 2013-05-05
  • 2011-01-14
  • 1970-01-01
相关资源
最近更新 更多