标签:允许 报错 返回值 data text angular 接收 .com http
经过各种尝试,angular的$post 无法获得服务端响应,服务端参数进不去。
var login = angular.module(‘login‘,[]); login.controller(‘loginctr‘,function($scope,$http){ $scope.submit = function(){ $http({ method:‘POST‘, url:‘‘, data: {"username":"admin","password":"admin"} }).then( function(e){ console.log(e) }, function(e){ console.log(e) } ) } })
使用JQuery可以获得返回值
$(function(){ $.ajax({ type:"post", dataType: ‘text‘, url: "", data:{"username":"admein","password":"admin"}, success : function(data){ console.log(data) //var a = eval(data); //console.log(a[3]) }, error : function(e){ console.log(e) } }); })
网上资料很多,先后尝试在JAVA服务端头部加入
response.setHeader("Access-Control-Allow-Origin", "*"); //允许所有域名访问
还是不可以,报错仍然为跨域问题。
再在angular中配置config的$httpProvider
因为说JQuery post的数据格式是字符串,angular post的数据格式为json,是格式问题。
配置解读地址 http://www.aichengxu.com/javascript/2444602.htm
配置后仍无法解决该问题。
最后尝试将 angular里的data参数改为params,可以正常接收服务端响应,算是解决问题。
根据Angular官方文档,加上params可以参数就可以转换成key1=value1&key2=value2格式,和jQuery传递的数据格式(请求前也会将json数据序列化)一样了
标签:允许 报错 返回值 data text angular 接收 .com http
原文地址:http://www.cnblogs.com/jojoray/p/6773514.html