我正在使用Scala中的Lift Web框架实现REST服务,并且我在PUT请求中遇到一些问题,以创建一个我知道ID的新实体.
已经将调度添加到Boot.scala我的休息服务对象看起来有点像这样:
package code
package lib
import model._
import net.liftweb._
import common._
import http._
import rest._
import util._
import Helpers._
import json._
object RestService extends RestHelper {
serve( "api" / "room" prefix {
// /api/room returns all the rooms
case Nil JsonGet _ => Room.registredRooms: JValue
// /api/room/count gets the room count
case "count" :: Nil JsonGet _ => JInt(Room.registredRooms.length)
// /api/room/room_id gets the specified room (or a 404)
case Room(room) :: Nil JsonGet _ => …Run Code Online (Sandbox Code Playgroud) 例如,给出以下JSON字符串:
[{"id": "user1", "password": "ps1"},{"id": "user2", "password": "ps2"},{"id": "user3", "password": "ps3"}]
Run Code Online (Sandbox Code Playgroud)
什么是在Scala中解析它的最佳和最优化的方法,并迭代每个结果并正确分析它?
谢谢.
我正在构建一个新的REST API,它将取代现有的REST API.较旧的API被编写为使用Java构建的SOAP API,这就是问题所在.大多数数据访问层库都是用Java编写的,如果我们可以使用这些库将是一个很好的资产.
到目前为止,我们的两个选项是:Ruby/Sinatra和Scala/Lift
我们还可以在Ruby/Sinatra堆栈上使用JRuby,以便使用我之前提到的Java库.我们主要担心的是可能的JRuby-Java库不兼容......
您认为最好的方法是什么?