如何使用angularjs从Web服务获取数据

时间:2015-04-11 12:13:15

标签: angularjs

我想使用angular js从webservice获取数据。请帮助......

    $http(
                {
                    url: "xxx.asmx/GetLogin",
                        method: "GET",
                    params: { username: "admin", password: "admin" }
                }

                ).success(function (res) { alert(res); });

我得到的结果如下:

<?xml version="1.0" encoding="utf-8"?><string xmlns="xxxx">[{"UserID":2,"UserName":"Admin","UserType":1,"Password":"admin","Company":1,"CreatedDate":"\/Date(1411151400000)\/"}]</string>

如何从此字符串中获取UserName和UserID?

1 个答案:

答案 0 :(得分:0)

您是否有权访问服务器?

通过查看asmx扩展名,我假设您使用的是.Net服务器 您需要返回json而不是xml才能在客户端轻松处理。

关于从json服务返回asmx,请阅读here

从技术上讲,您可以通过字符串操作(正则表达式或拆分)来访问UserName和UserID - 但这不是正确的方法。

这是一个额外的 UGLY和BAD 方式从字符串中提取数据:

var str = '<?xml version="1.0" encoding="utf-8"?><string xmlns="xxxx">[{"UserID":2,"UserName":"Admin","UserType":1,"Password":"admin","Company":1,"CreatedDate":"\/Date(1411151400000)\/"}]</string>';

var obj = str.split('[')[1].split(']')[0];
eval('var myRes = ' + obj + ';'); // ugly as hell
console.log(myRes.UserID);