Receive JSON post



我使用$routeProvider设置路由,如

when('/grab/:param1/:param2', {
    controller: 'someController',
    templateUrl: "templates/someTemplate.html",
}).

然后在someController中,我可以用$routeParams.param1读取参数。

我怎么能接收JSON POST,而不是让我不必在URL中使用参数?有什么东西我可以在控制器中使用,例如$request.postData ?

编辑:我会尽量让它更清楚

而不是接收param1param2(即在GET调用的URL),然后使用$routeParams来读取它们并在我的控制器中使用它们,我想接收一个JSON对象(当然是在POST请求中),并在我的控制器中提供该对象。

我终于解决了这个问题。在mywebsite.com上没有PHP或任何服务器端脚本可以获得JSON对象(POST)和JavaScript本身也不能。

你可能想在路由提供程序中将service传递给路由的resolve选项。该服务应该实现$http并获取json。resolve选项必须在控制器初始化之前完成获取。解析还将使json数据在控制器的$作用域中可用。

第一次设置这个并不简单,但它是可重复的,也是将数据从http请求传递给Angular控制器的最常见方法之一。

看看这个答案:AngularJS: factory $http。get JSON文件

最新更新