我试图通过CLI发送json格式的SNS消息。
aws sns publish --cli-input-json "{\"TopicArn\":\"xxx\",\"Message\":\"first line\n second line\",\"Subject\":\"Empty subject\"}"
但是\n不起作用。“\r\n”或“\n”也不起作用。我认为字符串被SNS转义了,所以\n不起作用。有人知道如何发送2行消息吗?(发送2条消息不是一个选项)感谢您的建议!
qyyhg6bp1#
我想\\n就是你要找的,我刚刚通过AWS SNS向我的设备发送推送通知进行了测试。因此,您的消息应该如下所示:
\\n
aws sns publish --cli-input-json "{\"TopicArn\":\"xxx\",\"Message\":\"first line\\nsecond line\",\"Subject\":\"Empty subject\"}"
注意,您不应该在换行符后面留下白色,否则,您的新行将以该空白开始。
fzwojiic2#
aws sns发布--主题-arn“arn:aws:sns:美国西部-2:0123456789012:我的主题”--消息文件://message.txtmessage.txt是包含要发布的消息的文本文件:你好世界二线将消息放在文本文件中允许您包括换行符。
hc2pp10m3#
这对我来说很有效:
"first line second line"
c0vxltue4#
我正在使用nodejs aws-sdk使用电子邮件协议发布消息。为了正确显示异常,我需要同时替换\n和\\n,为了安抚windows和mac客户端,使用了\r\n。
aws-sdk
\n
\r\n
message.replace(/\n|\\n/g, '\r\n')
对于任何需要完整代码的人来说,这就是我处理 typescript 中错误的方式
public prepareMessage(header: string, error: any) { const data = (error instanceof Error) ? JSON.stringify(error, Object.getOwnPropertyNames(error), 2) : JSON.stringify(error, null, 2); const replaceNewlines = (str: string) => str?.replace(/\n|\\n/g, '\r\n') || ''; return `${replaceNewlines(header)}\r\n${replaceNewlines(data)}`; }
lrl1mhuk5#
四个反斜杠对我有效将Aws SNS与Firebase配合使用EX:反斜杠反斜杠反斜杠反斜杠+n
blpfk2vs6#
在测试了所有建议的答案之后,下面是在我的案例中工作的(从python lambda函数运行,从boto3sns客户端发布):这创建了2个新行:第一个月这创建了1个新行:message.replace('\n', '\r')
message.replace('\n', '\r')
message = message.replace('\n', '\r').replace('\t', ' ') # Sending the notification... snsclient.publish( TargetArn=SNS_EMAIL_ALERTS_ARN, Subject=f'{filter_name} Alert: ({lambda_func_name[3]})', Message=message )
6条答案
按热度按时间qyyhg6bp1#
我想
\\n
就是你要找的,我刚刚通过AWS SNS向我的设备发送推送通知进行了测试。因此,您的消息应该如下所示:
注意,您不应该在换行符后面留下白色,否则,您的新行将以该空白开始。
fzwojiic2#
aws sns发布--主题-arn“arn:aws:sns:美国西部-2:0123456789012:我的主题”--消息文件://message.txt
message.txt是包含要发布的消息的文本文件:
你好世界二线
将消息放在文本文件中允许您包括换行符。
hc2pp10m3#
这对我来说很有效:
c0vxltue4#
我正在使用nodejs
aws-sdk
使用电子邮件协议发布消息。为了正确显示异常,我需要同时替换\n
和\\n
,为了安抚windows和mac客户端,使用了\r\n
。对于任何需要完整代码的人来说,这就是我处理 typescript 中错误的方式
lrl1mhuk5#
四个反斜杠对我有效
将Aws SNS与Firebase配合使用
EX:反斜杠反斜杠反斜杠反斜杠+n
blpfk2vs6#
在测试了所有建议的答案之后,下面是在我的案例中工作的(从python lambda函数运行,从boto3sns客户端发布):
这创建了2个新行:第一个月
这创建了1个新行:
message.replace('\n', '\r')