【问题标题】:AWS SNS how to add line breaks in messageAWS SNS 如何在消息中添加换行符
【发布时间】:2020-06-12 16:50:52
【问题描述】:

我正在尝试通过 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 条消息不是一种选择)感谢您的建议!

【问题讨论】:

  • 可以用单引号括起来试试吗? \"first line'\n' second line\"
  • 没有单引号不起作用:)
  • 您的 CLI 命令无需任何更改即可完美运行。我刚刚发送了一个 SNS,并在我的电子邮件中看到了两行。你用的是什么外壳?
  • helloV 感谢您指出这一点!实际上,我以字符串格式调用了命令,使用了一种很少有人使用的次要语言。在那种情况下,我一定是在如何在字符串中转义方面犯了错误。

标签: json amazon-web-services amazon-sns


【解决方案1】:

我认为\\n 实际上是您正在寻找的。我刚刚通过 AWS SNS 向我的设备发送推送通知对其进行了测试。

所以你的信息应该是这样的:

aws sns publish --cli-input-json "{\"TopicArn\":\"xxx\",\"Message\":\"first line\\nsecond line\",\"Subject\":\"Empty subject\"}"

注意,你不应该在换行符后面留下空格,否则你的新行会以那个空格开头。

【讨论】:

    【解决方案2】:

    aws sns 发布 --topic-arn "arn:aws:sns:us-west-2:0123456789012:my-topic" --message file://message.txt

    message.txt 是一个包含要发布的消息的文本文件:

    你好世界 第二行

    将消息放入文本文件允许您包含换行符 .

    【讨论】:

      【解决方案3】:

      这对我有用:

      "first line
second line"
      

      【讨论】:

        【解决方案4】:

        四个反斜杠 为我工作

        将 Aws SNS 与 Firebase 结合使用

        EX: backslashbackslashbackslashbackslash+n

        【讨论】:

          猜你喜欢
          • 2017-10-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-08-04
          • 1970-01-01
          • 2015-02-04
          • 1970-01-01
          • 2017-05-28
          相关资源
          最近更新 更多