java - AWS Lambda Java 返回带斜杠的字符串

标签 java json aws-lambda

我在

之后从 Lambda 返回字符串时遇到问题
JSONObject.toString

作为返回我有

"{\"Key2\":\"Value2\",\"Key1\":\"Value1\"}" 

代替

"{"Key2":"Value2","Key1":"Value1"}"

有人可以解释一下如何排除这些斜线吗?

最佳答案

如果你真的需要删除它们......

yourstring.replace("\\", "");

但是,如果您将响应视为字符串,那么这些“愚蠢的斜线”是必需的,因为它们会转义您的 " 字符。具体来说,如果没有这些,您的编译器将表现如下:

"{"     // is a string
Key2    // Not known by Java
":"     // is a string
Value2  // Not known by Java
","     // is a string
Key1    // Not known by Java
":"     // is a string
Value1  // Not known by Java
"}"     // is a string

通过使用反斜杠转义您的 " 字符,您是在向编译器提及它不应被视为字符串的结尾或开头。因此,要求它仅考虑第一个和最后一个 ".

关于java - AWS Lambda Java 返回带斜杠的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47676317/

相关文章:

java - 使用SimpleXml解析xml时第-1行报错

java - 遍历通过 ThreadPoolTask​​Executor 运行的线程

java - JAX-RS:如何在发送响应之前拦截 json 消息体?

c# - 使用 C# 和 Json.Net 进行解析

javascript - AWS Lambda 和 promise : Callbacks not being called

java - 在java中,有没有办法搜索存储在链表中的类的特定字段?

java - 如何配置服务器上的聚光灯以提供与网络上的聚光灯演示相同的输出?

javascript - 循环对象,重复仅显示一次

amazon-web-services - 如何将 AWS API 网关阶段指向特定的 lambda 函数别名?

aws-lambda - 用于 DynamoDB 索引查询的 ARN 不起作用