1

こんにちは、私は自分の API に Lift を使用しています。jSONP 応答を生成するための助けが必要です。JSON 応答の作業バージョンがあり、ドメイン間の呼び出しに API を使用できるように追加する必要があります。現在、私のAPIのコードスニペットは次のとおりです。

/リクエスト/

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)
  ))}
4

1 に答える 1

2

過去にこれを行った方法は、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-07-03T21:59:52.877 に答える