Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从AWS Python lambda函数返回html页面_Python_Html_Aws Lambda_Aws Api Gateway - Fatal编程技术网

从AWS Python lambda函数返回html页面

从AWS Python lambda函数返回html页面,python,html,aws-lambda,aws-api-gateway,Python,Html,Aws Lambda,Aws Api Gateway,我目前有一个Python lambda函数,它返回一个JSON对象。然而,我并没有得到一个带有JSON数据的白色屏幕,而是想知道是否有一种方法可以返回一个返回而不是JSON的html网页?当前返回的数据如下所示 return { 'statusCode': 200, 'headers': {}, 'body': json.dumps({ 'HOW-TO: ': prompt, 'instanceId':

我目前有一个Python lambda函数,它返回一个JSON对象。然而,我并没有得到一个带有JSON数据的白色屏幕,而是想知道是否有一种方法可以返回一个返回而不是JSON的html网页?当前返回的数据如下所示

 return {
'statusCode': 200,
'headers': {},
'body': json.dumps({ 

                    'HOW-TO: ': prompt,    
                    'instanceId': instanceId,
                    'PUBLIC_IP_ADDRESS': publicIp,
                       'instanceRegion':Instance_region
})

但我很好奇是否有一种方法可以返回HTML页面

当然可以。Lambda函数返回的默认内容是任意字符串。您可以返回一个JSON对象,或者HTML,或者几乎任何您想要的文本。还有一种方法,使用CLI将内容类型设置为二进制而不是文本,但这对您的问题并不重要

要返回HTML,只需更改return语句以返回HTML标记


您必须生成HTML标记,这是一个完全不同的问题。如果你正在寻找一个Python的HTML标记生成器,而不是手工生成,那么你可以考虑一个库,比如,或者甚至更好的模板系统,比如,或者

是的,你可以,用AWPython定义正确的标题

标题:{'Content-Type':'text/html'}

如以下示例所示(请调整正确的Python标识)

def lambda_处理程序(事件、上下文):

import json

longinformation = '''
<h1 style="color: #5e9ca0;">You can edit <span style="color: #2b2301;">this demo</span> text!</h1>
<h2 style="color: #2e6c80;">How to send HTML with AWS lambda in Python:</h2>
<p>Paste your documents in the visual editor on the left or your HTML code in the source editor in the right. <br />Edit any of the two areas and see the other changing in real time.&nbsp;</p>
'''

return {
    "statusCode": 200,
    "headers": {'Content-Type': 'text/html'},   #it really works by Hector Duran!
    "body": longinformation
}
导入json
长信息=“”
您可以编辑此演示文本!
如何使用Python中的AWS lambda发送HTML:
将文档粘贴到左侧的可视化编辑器中,或将HTML代码粘贴到右侧的源代码编辑器中
编辑这两个区域中的任何一个,并实时查看其他区域的变化

''' 返回{ “状态代码”:200, “headers:{'Content-Type':'text/html'},#Hector Duran真的很管用! “主体”:纵向信息 }
我没有django视图