我试图通过在有效负载内的html正文中传递变量(在send_email()中)从lambda发送电子邮件。我尝试使用+str(latesturgency)+
和{latestimpact}
。这不起作用。我不熟悉lambda和python
我怎样才能解决这个问题
import json
import logging
import re
import http.client
import mimetypes
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
def send_email(email,latestdescription,latestservice,latestimpact,latesturgency):
conn = http.client.HTTPSConnection("mail.us-east-1.aws.cloud.bmw")
payload = {
"from":"xxx@yyy.com",
"to": "xxx@yyy.com",
"subject": "Test mail","textbody": "body",
"htmlbody": "<h3>Test body!Please create a +str(latesturgency)+ priority ticket to {latestservice} , with below message:{latestdescription}</h3>"
}
print(payload)
headers = {
'Content-Type': 'application/json'
}
data=json.dumps(payload)
print(data)
conn.request("POST", "", data, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
print("done")
def lambda_handler(event, context):
empidemployee= event['currentIntent']["slots"]["empidemployee"]
latestdescription= event['currentIntent']["slots"]["latestdescription"]
latestservice= event['currentIntent']["slots"]["latestservice"]
latestimpact= event['currentIntent']["slots"]["latestimpact"]
latesturgency= event['currentIntent']["slots"]["latesturgency"]
email=event['currentIntent']["slots"]["email"]
send_email(email,latestdescription,latestservice,latestimpact,latesturgency)
您可以使用
format
函数对字符串执行此操作,我在下面添加了此函数使用
{}
表示法指示变量应替换的位置,然后在字符串按要使用的顺序传入变量后使用.format()
就你而言,现在是这样
有关format函数的更多信息,请阅读文档
相关问题 更多 >
编程相关推荐