我正在尝试将angularjs与ASP.NET Web Forms一起使用,一切顺利,直到我需要向c#webmethods发出请求.我在这里和其他页面上搜索解决方案并没有找到任何东西.
让我们来解决问题:我的请求只返回我的Default.aspx HTML代码,而不是我的JSON.事实上,我的请求不会调用我的webmethod …
app.controller('CtrlBoletos',function($scope,FactoryBoleto) { $scope.selections = []; $scope.boletos = FactoryBoleto.getBoletos(); $scope.grIDBoletos = { data: 'boletos',selectedItems: $scope.selections,multiSelect: false };});app.factory('FactoryBoleto',function ($http) { var getBoletos = function() { $http({ method: 'POST',url: "./Default.aspx/get_boleto",async: false }).success(function(result){ console.info(result); }); }; return { getBoletos: getBoletos };});
这是我的webmethod
[WebMethod] public static string get_boleto(){ List<TFechamento_Boleto> Lista = new List<TFechamento_Boleto>(); JavaScriptSerializer serializer =new JavaScriptSerializer(); TFechamento fechamento = new TFechamento(2); Lista = fechamento.getDados(1).Boleto; var Json = serializer.Serialize(Lista); return Json;}
啊,如果我用Jquery AJAX发出请求,我会得到Json …
有人帮助我,我对此感到疯狂……对不起我的坏英语:p
@H_301_28@解决方法 我通过设置头文件,responseType和添加一个空数据对象来解决这个问题factory.handshake = function () { return $http({ method: "POST",url: urlBase.concat("/Handshake"),data: {},headers: { "Content-Type": "application/Json" },responseType: 'Json' });};
……而且,当我打电话给我的网络方法时,结果会神奇地出现
myFactory.handshake() .success(function (fromAPI) { alert(fromAPI.d); }) .error(function (error) { $scope.status = 'Unable to load sport data: ' + error.message; });总结
以上是内存溢出为你收集整理的c# – 带有angularjs的$http请求正在返回我的html doc全部内容,希望文章能够帮你解决c# – 带有angularjs的$http请求正在返回我的html doc所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)