我如何在 angularjs 中使用 Restful。我使用了 ngResource 但它不起作用。如果我使用 ngResource,js 文件 nt 正在执行
Posted
技术标签:
【中文标题】我如何在 angularjs 中使用 Restful。我使用了 ngResource 但它不起作用。如果我使用 ngResource,js 文件 nt 正在执行【英文标题】:How can i use Restful in angularjs.I used ngResource but its not working .The js file nt executing if i used ngResource 【发布时间】:2014-07-23 17:10:51 【问题描述】:var app = angular.module('app', ['ngResource']);
app.factory('UserFactory', function ($resource)
return $resource('/com/vsoft/rest/users', ,
query:
method: 'GET',
params: ,
isArray: false
);
);
app.controller('MyCtrl1', ['$scope', 'UserFactory', function ($scope, UserFactory)
UserFactory.get(, function (userFactory)
$scope.firstname = userFactory.firstName;
$scope.lastname = userFactory.lastName;
);
);
]);
我在我的 html 中添加了上面的应用程序。但是应用程序和 angular-resource.js 但我的 app.js 没有执行。
如果我删除了 ngResource 模块并且 $resource 警报即将到来。但是如果我使用 ngResource 我不会收到警报。
请帮忙。如果有人知道任何使用 angularjs 使用 Restful 服务的好例子。请发送 Url 或代码。
请帮帮我。
我打电话给名字 在我的 html 中,但它没有出现。
【问题讨论】:
你是否包含了 angular-resource.js 文件?这篇博文很好地解释了以角度 blog.brunoscopelliti.com/… 使用 REST 服务 如果添加ngResource时JS没有执行,很可能是您没有添加资源JS文件:http://ajax.googleapis.com/ajax/libs/angularjs/1.2.17/angular-resource.min.js
【参考方案1】:
我使用服务来处理 RESTful 消息
app.service('restService', function ($http, $log)
'use strict';
var self = this;
var BASE_URL = "base/url/";
//First way how to do it
self.httpGet = function (url)
$log.info("HTTP Get", url);
return postProcess($http(method: 'GET', url: BASE_URL + url));
;
//Second way how to do it
self.httpPut = function (url, object)
$log.info("HTTP Put", url);
return postProcess($http.put(BASE_URL + url, object));
;
self.httpPost = function (url, object)
$log.info("HTTP Post", url);
return postProcess($http.post(BASE_URL + url, object));
;
self.httpDelete = function (url)
$log.info("HTTP Delete", url);
return postProcess($http.delete(BASE_URL + url));
;
function postProcess(httpPromise)
return httpPromise.then(function (response)
if (response.status === 200)
return response;
//Other than 200 is not ok (this is application specific)
failure(response);
, function (response)
failure(response);
);
/**
* Promise for failure HTTP codes
* @param response the HTTP response
*/
function failure(response)
//Error handling
);
可用作
restService.httpGet("categories").then(function (response)
categoryData = angular.fromJson(response.data);
//Broadcast an event to tell that the data is ready to be used
$rootScope.$broadcast("categoriesReady");
);
【讨论】:
以上是关于我如何在 angularjs 中使用 Restful。我使用了 ngResource 但它不起作用。如果我使用 ngResource,js 文件 nt 正在执行的主要内容,如果未能解决你的问题,请参考以下文章
如何在 AngularJS 部分文件中使用 php (wordpress) 函数?