-1

首先我会在服务器中评论我的配置

我有一个 apache,我的 html 页面在 80 端口有角度,在 4000 端口有其他网络服务器像 API 一样监听

我正在尝试向我的服务器发出 $http 请求,但没有成功,只是错误消息,这是我的代码

$http.post('http://localhost:4000/tareas', {msg:'asd'}).
success(function(data, status) {
    alert('funciono');
}).
error(function(data, status) {
    alert('error');

});

我的服务器收到该请求,因为我在访问控制器时发送了一条消息,因此该请求与我的 API 连接,但始终以角度执行我的请求,即使使用 $http.jsonp,也会向我发送错误警报,我的服务器返回一个简单的 json。

{data:'hurra.!', status:200}

我需要来自服务器的不同响应才能成功?

即使使用 F12 和网络,我看到请求“取消”了 get 和 post,但我的服务器发送消息,所以我收到了该请求。用jsonp,chromium别说瘦了,一切正常,但是$http.json还是给我报错,是因为我的服务器响应吗?

谢谢大家。

4

1 回答 1

0

好吧,搜索更多我发现跨域请求在 url 中需要“callback=JSON_CALLBACK”并执行 jsonp 请求,所以将我的代码更改为

$http.jsonp('http://localhost:4000/tareas?callback=JSON_CALLBACK'}).
success(function(data, status) {
    alert('funciono');
}).
error(function(data, status) {
    alert('error');

});

做这项工作,我的 ajax 请求现在成功了......我在其他方面找到了这个,我把链接放在这里以获取更多信息。

在 angular.js 中解析 JSONP $http.jsonp() 响应

谢谢

于 2014-10-23T08:08:34.310 回答