我刚刚开始使用Spray,我正在构建一个只返回一些JSON的示例API。 以下面的例子为例。我把字母存储在单身......
class Alphabet {}
object Alphabet {
final val alphabet = Array('a', 'b', 'c', ...)
}
然后我有一个简单的喷涂路线...
path("list") {
get {
respondWithMediaType(`application/json`) {
complete(Alphabet.alphabet)
}
}
}
这很好用,似乎返回一个带有正确数据的“application / json”响应。但这有效吗?即,这是最终用户期望的格式正确的响应吗? 我问的原因是我已经查看了许多Spray示例,并且大多数似乎使用case类并指定与此类似的自定义JSON格式化程序...
object CustomJsonProtocol extends DefaultJsonProtocol {
implicit val responseFormat = jsonFormat3(CaseClassHere)
}
...
complete {
CaseClassHere("Test", "Test");
}
什么是正确的做法?
由于