而不是
(A)按照更传统的方式在AWS上运行web应用程序(例如,在AWS EC2或Beanstalk上使用Ruby/Sinatra或Python/Flask),或者
(C)在S3中创建静态HTML和JavaScript文件,在AWS Lambda中创建动态API端点(将JSON数据发送到通过JavaScript使用/解释这些数据的静态网页),
我想达成一个中间立场:
这种设置将产生一个无服务器的web应用程序,其中AWS Lambda函数提供服务器端生成的HTML输出(讽刺的是,我没有忘记)。在
在AWS Lambda函数的Python代码中,可以包含HTML代码片段,在函数中修改(填充数据),并将HTML作为text/html
输出返回给客户机。这种方法的缺点是HTML模板随后“嵌入”在Python代码中,而不是外部的单独文件中。在
问题1:如何引用代码包中某个地方的HTML模板文件-模板应该是包的一部分-让Python函数读取该文件,并通过模板中的变量替换生成HMTL页面?在
问题2:如何使用AWS无服务器应用程序模型(AWS-SAM)在我的项目中指定/包含/链接到一组HTML模板文件?在
我不知道你从这里开始,所以我从头开始。在
创建引用处理程序和事件资源的YAML配置文件,并将其放入
deployment
文件夹中。对于模板,使用“mustasheforpython”pystashe。
在Python项目/Virtualenv中创建参数化的HTML模板:
创建
data
对象以填充参数化模板:从项目中的位置加载
template
从数据对象呈现页面:
将呈现的html返回给客户端:
压缩python代码、站点包和html文件并放入
deployment
文件夹中。从
deployment
文件夹打包SAM项目,该项目准备并上载到S3:从
deployment
文件夹,将SAM项目部署到AWS:我更喜欢C选项,带NodeJS。。。:)
相关问题 更多 >
编程相关推荐