我尝试使用AngularJS $http
调用asmx服务。但我无法从网络服务获取数据。我获得了成功回调,但响应是整个html页面,而不是作为响应返回的对象。
这是我的C#asp.net网络服务代码:
public class DataService : System.Web.Services.WebService
{
[WebMethod]
public Hello HelloWorld()
{
Hello h = new Hello();
h.Message = "Hello World";
return h;
}
}
public class Hello
{
public string Message { get; set; }
}
这是AngularJS代码
function FormController($scope,$http) {
$scope.submit = function (user) {
var url = '../../Services/DataService.asmx?op=HelloWorld';
$http({
method: "get",
url: url
}).success(function (data, status, headers, config) {
console.log(data);
});
}
FormController.$inject = ['$scope','$http'];
}
在表单提交上调用上述方法。
答案 0 :(得分:0)
看起来网址不正确。
尝试:
function FormController($scope,$http) {
$scope.submit = function (user) {
var url = '../../Services/DataService.asmx/HelloWorld';
$http({
method: "get",
url: url
}).success(function (data, status, headers, config) {
console.log(data);
});
}
FormController.$inject = ['$scope','$http'];
}