我如何在play frmaework上从angular到后端调用send和accept Json对象



我在play frmaework上用angularjs写了前端,用scala写了后端。现在,我想通过调用一个同时返回json对象的方法,将json对象从angular发送到后端。我用angularjs、scala和路由文件`编写了以下代码

angular.js
$scope.show=function(){
        var url="localhost:9000"
        var urlText=
        {
            "url":$scope.url
        };
        $http({
            method:"GET",
            url:url+"/getUrl",
            params:{
                data:urlText
            }
        })
            .success(function(data){
                $scope.url-title.push(data.title)
                $scope.url-description.push(data.description)
                $scope.url-img.push(data.img)
            })
    }

Controllers.scala
object Application extends Controller{
def returnUrl(text:JsValue):JsValue ={
    val str=(text  "url").as[String]
    val obj=new UrlPreview()
    obj.returnDescription(str)
    val jsonObj:JsValue=Json.obj(
      "title" ->obj.returnTitle(),
      "description"->obj.returnDescription(),
      "img"->obj.returnImage()
    )
    return jsonObj
  }
}
Routes
GET         /getUrl/{text}                    controllers.Application.returnUrl

`我是网络开发的新手。所以我没有足够的想法。如果你知道我在哪里做错了。请分享一些想法

如果你想发送json,你应该POST或PUT,而不是GET。在播放端,主体解析器开始发挥作用,这样路由就不包含任何参数,在操作方法中,您可以使用例如request.body.json.

最新更新