【发布时间】:2015-09-06 06:24:44
【问题描述】:
我遇到了一些问题,实际上我已经解决了问题,问题是标头无法获得响应(如 CORS 问题),通过使用标头和 transformRequest 来克服,如下面的代码所示。之后我得到了 web 服务数据,但是在一个控制器中使用了 $rootscope,它渲染了第二种方法 (API) 的一些数据 id,以便在另一个控制器中使用第三个 api 来获取数据,然后我只得到了一分钟它会抛出错误:无法读取 null 的属性“公司数据”,它是第三个 api 中的字段。当我使用 $rootScope.Test.companies[0].companyname 时,它是存储数据,并且对于所有 api(如主键)都是唯一的。
var request = $http({
method: "post",
url: "http://app.xyz/xyzapp/public/user/login",
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
transformRequest: function(obj) {
var str = [];
str.push(encodeURIComponent('email_id') + "=" + encodeURIComponent('demo@xyz.com'));
str.push(encodeURIComponent('password') + "=" + encodeURIComponent('demo@xyz'));
return str.join("&");
},
});
request.success(function( response ) {
console.log("Hiiiii::::"+JSON.stringify(response,status));
if (response.status=="success"){
$rootScope.Test1=response.user_id;
var request1 = $http({
method: "post",
url: "http://app.xyz/xyzapp/public/company/getUserCompanyList",
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
transformRequest: function(obj) {
var str = [];
str.push(encodeURIComponent('user_id') + "=" + encodeURIComponent(response.user_id ));
// str.push(encodeURIComponent('password') + "=" + encodeURIComponent('demo@123'));
return str.join("&");
}
});
// getCompany
request1.success(function( response ) {
console.log("Hiiiii::::"+JSON.stringify(response,status)+" "+response.companies.length+":Length");
if (response.status=="success"){
// alert(1);
$state.go('tabdash');
$rootScope.Test = response;
}
});
所以请告诉我如何将一个控制器数据使用到另一个我正在使用另一个 api 的地方,该 api 将获得父级的 $rootscope 日期。 如果有人知道这件事或任何事情,请告诉我
谢谢
【问题讨论】:
标签: javascript angularjs node.js angular-ui-router ionic-framework