【问题标题】:JSONP response in Lift FrameworkLift Framework 中的 JSONP 响应
【发布时间】:2013-06-20 11:53:59
【问题描述】:

您好,我正在为我的 api 使用 Lift,需要一些帮助来生成 jSONP 响应。我有一个 JSON 响应的工作版本,需要添加到它,以便我可以使用我的 api 进行跨域调用。这是我的api目前的代码sn-p:

/请求/

case "api" :: "events" :: "person" :: _ Get req => JsonResponse(json_person(personEvents(req, req.request.queryString.mkString("")),person_details(req)))

/回复/

def json_person(in : List[Events], person1 : List[Person]) : JValue = {
("person" ->
 person1.map(people =>
    ("name" -> people.main_person_name.is) ~
    ("alternate_name" -> people.aka.is)
  ))}

【问题讨论】:

标签: api jsonp lift lift-json


【解决方案1】:

我过去这样做的方法是检查 URL 中是否提供了“回调”查询参数,如果是,则使用提供的函数名来执行回调。如果未提供,则将对象本身发回。

case "api" :: "events" :: "person" :: _ Get req => {
    val jsonObj = json_person(...)
    S.param("callback") match {
       case Full(callbackName) => JSFunc(callbackName, jsonObj).cmd
       case _ => JsonResponse(jsonObj)
    }
}

【讨论】:

    猜你喜欢
    • 2013-10-15
    • 2012-07-29
    • 1970-01-01
    • 2013-04-08
    • 1970-01-01
    • 2014-05-15
    • 2014-08-14
    • 2012-01-25
    • 2017-02-27
    相关资源
    最近更新 更多