Javascript 在AngularJS框架范围内的页面加载时调用webservice
我有一个返回Jsonobject的Web服务,我使用Ajax在JS中调用它,如下所示:Javascript 在AngularJS框架范围内的页面加载时调用webservice,javascript,html,ajax,angularjs,web-services,Javascript,Html,Ajax,Angularjs,Web Services,我有一个返回Jsonobject的Web服务,我使用Ajax在JS中调用它,如下所示: $scope.init = function () { $.ajax({ type: 'GET', timeout: 1000000000, url: serverName.replace('services', 'servicesV2') + '/getTr
$scope.init = function () {
$.ajax({
type: 'GET',
timeout: 1000000000,
url: serverName.replace('services', 'servicesV2') + '/getTreasuryResults',
data: { data: 'None' }, // the data in form-encoded format, ie as it would appear on a querystring
dataType: "text", // the data type we want back, so text. The data will come wrapped in xml
success: function (data) {
var dataAngularTreasury = JSON.parse(data);
alert(dataAngularTreasury);
//FillDefaultTreasuryValues(data.split(";"));
CallTreasuryDetailValuesWS(934);
},
error: function (data) {
alert(errServiceCall); // show the string that was returned, this will be the data inside the xml wrapper
$('#loading').hide();
}
});
};
如果我在ng中调用init()函数,请单击
<button id="btnGetDefaultValues" type="button" class="button" ng-click="init()">Fill</button>
或
如果我在ng init触发器中调用这个webservice
<body id="body" ng-app="termDeposite" ng-controller="userCtrl" ng-init="init()" >
webservice转到错误步骤并抛出该错误:
“\n\n\n错误404--不是”
找到\n\n\n\n\n\n错误404--不是
从RFC中找到\n\n\n
2068超文本传输协议--
HTTP/1.1:\n10.4.5 404未找到\n服务器未找到任何与 请求URI。没有给出条件是否满足的指示 临时的或永久的。
如果服务器不希望这样做 客户可用的信息,状态代码403(禁止) 可以改为使用。如果 服务器通过一些内部可配置的机制知道 旧资源永久不可用且没有转发 地址。\n\n\n\n\n\n“最后,我可以使用ng click调用Web服务,但不能使用ng init或pageload调用相同的Web服务。那么,如何在page init或angular framework范围内的page load中使用ajax调用Web服务呢?假设您将serverName作为全局名称,并且它是可读的,那么ng init版本或创建自定义指令并将代码粘贴到链接函数中应该可以工作
检查在电脑mac f12上的Chrome开发工具(内置于Chrome中)-cmd+alt+j的网络选项卡中实际调用的URL。使用浏览器的网络选项卡或fiddler进行检查。他们是否提出了完全相同的请求?是的,我可以使用复制完整的ws-url调用相同的Web服务,并将其直接粘贴到浏览器选项卡,它不会返回任何错误。在控制器中使用.ready没有多大意义,但我需要ws在page load@YOUit中返回数据关于serverName。谢谢你@alexrogins
<body id="body" ng-app="termDeposite" ng-controller="userCtrl" ng-init="init()" >