问题标签 [spray-json]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
14385 浏览

scala - 如何使用 jsonspray 序列化具有特征的案例类

我明白,如果我有:

我可以用

并因此将其序列化:

但是如果我有

我的代码中有某个地方

我需要序列化它,我想使用 json spray

我应该添加哪个序列化程序我希望有类似的东西:

也许我需要添加一些匹配器来检查什么类型是动物,这样如果它是一个人,我会将它定向到人但什么也没找到......正在阅读https://github.com/spray/spray-json 而且不明白该怎么做..

那么我怎样才能序列化这组

用json喷雾?

0 投票
2 回答
1082 浏览

json - 在 Spray 1.2.0 路由中结合查询字符串参数和 JSON 实体

使用喷雾路由,我想要一个指令,将查询字符串参数与 JSON 实体合并,两者都是可选的。我希望在任何编组发生之前发生这种情况。

像这样的东西:

基本上我希望的是以下行为:

当有人提出如下请求时:

那么上面的对象 ( myobj) 可以包含键:

换句话说,请求正文中指定的项目将覆盖查询字符串中的内容。我知道这一定是可能的,但我根本不知道该怎么做。任何人都可以帮忙吗?

谢谢!

0 投票
2 回答
2052 浏览

scala - 如何将 jdbc 结果转换为不可变集合

我有一个用 scala 编写的小应用程序,它向 mysql 发送请求,接收结果,然后将其转换为 json 并发送到某个 http 服务器。我使用 java jdbc 和 mysql 连接器连接到数据库和 spray-json 用于 scala 集合到 json 的转换。因此,我创建了与 db 的连接,执行查询,然后使用getResultSet(). 然后我遍历它,并将结果复制到可变映射:

这很好用,但是我必须将结果转换为不可变映射,因为 spray-json 无法将可变集合转换为 json,AFAIK。有没有一种好方法可以将此处的 jdbc 结果转换为不可变集合而不将其处理为临时可变映射?也许有可能以某种方式使用流?我在问,因为看起来必须有一些很酷的功能模式来做到这一点,我不知道。

ps 顺便说一句,我不能只使用 Slick,因为它不支持存储过程,AFAIK。

0 投票
3 回答
1152 浏览

json - Spray json parsing and NullPointerException

i'm got an error:

Here is my code for json deserialisation:

I guess it could be because of the overloaded constructors in the class RequestHolder.

upd: The json content is:

0 投票
3 回答
17573 浏览

json - Spray-json反序列化嵌套对象

如何在 spray-json 中正确反序列化嵌套对象?

在旁注中,如何喷雾 json 帮助序列化到字段映射(嵌套对象的嵌套映射)?

0 投票
2 回答
7133 浏览

json - 为对象序列提供 JsonFormat

我试图在这里找到一些帮助,将 DefaultJsonProtocol 的 JsonFormat 扩展应用于包含对象序列的类。

所以对于课程:

现在我想应用我的 JsonFormat:

但实际上我不知道该怎么做。我搜索了 spray-json 文档并通过 google、stackoverflow & Co. 进行了搜索。我对 Scala/Spray 完全陌生,也许我只是错过了重点。所以,也许这里有人好心帮助我。没有地址序列我会工作。

使用示例中提供的 JsArray,我得到类型不匹配。它正在检查 List[JsValue] 但也转换为列表不匹配仍然存在。

我还尝试插入一个单独的 AdressJsonProtocol 并通过以下方式包含它:“addresses”-> AdressJsonFormat.write(pers.adresses) 但它又是一个序列...

0 投票
1 回答
809 浏览

scala - 通过覆盖 JsonPrinter 在 Spray-json 中处理 Unicode

在尝试使用 Scala/Spray 的第一步时,我遇到了在 spray-json 中正确处理 unicode 的问题。

例如:á 在 json 中生成 \u00e1。生成的标头指示 UTF-8 以及正确的设置 auf -Dfile.encoding=UTF-8 ,它在 Scala 的 System.properties 中显示 UTF-8。

我在这里找到了一个可能的解决方案

但我很惭愧地承认我不知道如何实现这一点,因为我没有直接处理 JsonPrinter。这是我所拥有的:

Json协议:

Person 类中的简单映射:

路线内的数据库调用:

所以我的问题是,我如何覆盖 JsonPrinter 中的 printString 方法。我将不胜感激任何帮助。先感谢您!

0 投票
1 回答
1017 浏览

json - 使用 spray.json 获取 Json 对象

我正在使用喷雾,我需要json通过方法返回一个对象。

这打印ConfigResults(S1000,Success,List(testDataTypes, mandate, sdp))

但我需要把它作为json对象。我该怎么做?

我试过这样

它给出了编译错误could not find implicit value for parameter marshaller: spray.httpx.marshalling.ToResponseMarshaller

0 投票
7 回答
99829 浏览

javascript - 从 AJAX 调用中获取 JSON 对象

我是AJAX和的新手javascript。在我的项目中,我必须在我的文件中获取一个json对象。javascript我已经使用过spray-json,它向我显示了 url 中的 json 对象。http://localhost:8081/all-modules

我的阿贾克斯电话

它返回一个警报[object Object]。这里有什么问题?

0 投票
2 回答
1289 浏览

spray - scala-spray: why do I get escaped strings with trailing quotes?

I'm new to scala and spray and I'm having a very simple problem. I want my rest service to return unescaped strings when I return a string from a rest call, it stead i'm getting a compacted string with escapes in it. Here is my code:

Rest Service: ....

When I call the my service I get:

But if I do a println() I see what I would expect. Please help.