【发布时间】:2016-04-28 01:54:49
【问题描述】:
我正在从我的 AngularJS for mobile 应用程序中向 php 脚本发出发布请求。 当我在 html.its 中使用此代码形式 action="url" method="post" 时工作正常。 但是当我在 angularjs 中使用 ajax url 请求时,php 服务器没有接收到这些值。那我该如何实现呢
我的代码:
var 数据:{ jwt: 's21@s.com' }
var req={
method : 'POST',
url: 'http:url//'
}
$http(req).success(function(data){
alert(JSON.stringify(data));
}).error(function(data) {
alert("failure");
alert(JSON.stringify(data));
});
}
myphp代码:
$id = $_POST["jwt"];
【问题讨论】:
-
您是否在 JS 控制台中收到任何错误消息? Angular 不像 PHP。对于正在发生的事情,它有点冗长。起初猜测您可能在使用 XHR 时遇到了一些问题,但请检查 JS 控制台...
-
错误:对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,Origin 'localhost:8100' 不允许访问。响应的 HTTP 状态代码为 500。
-
所以你有一个典型的跨域错误。您不能从位于同一台机器上的两个页面运行 XHR 请求。尝试将代码上传到服务器,或者您可以在 chrome 中禁用 XHR 权限,该权限已在堆栈中多次覆盖,包括此处:stackoverflow.com/questions/22026984/… 此外,正如 Ohgodwhy 在下面建议的那样,您并没有正确使用 $http.post。但一次只有一个错误。
标签: javascript php angularjs json ajax