使用AngularJs调用WCF REST服务给出错误

时间:2015-05-06 14:41:46

标签: jquery .net asp.net-mvc angularjs wcf

我正在尝试使用 AngularJS 从我的本地计算机调用 WCF REST 服务(在非PROD环境中托管)。但每次我都得到

SEC7119:http://XXX/XXX/Web/rest/GeDetails的XMLHttpRequest需要CORS预检。

SCRIPT7002:XMLHttpRequest:网络错误0x80070005,访问被拒绝。

我有什么办法可以使用AngularJS来使用WCF REST服务吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

您遇到了CORS错误。

您必须在api中启用CORS - > enabling-cross-origin-requests-in-web-api

for WCF Rest尝试this

然后在你的angular.config中你必须:

    angular.module('myapp',[...])
    .config(function ($stateProvider, $urlRouterProvider, $httpProvider) {
        $httpProvider.defaults.useXDomain = true;
        delete $httpProvider.defaults.headers.common['X-Requested-With'];
        // ...
  })

显然,在最新的AngularJS版本中,您不必添加任何内容work。但实际上对我来说就是这样。

我希望这会有所帮助

答案 1 :(得分:0)

在我的服务global.asax页面中使用下面的代码,并且它的工作完美。

$statement = "SELECT * FROM `users` WHERE `id` = :id";
$prepared = $connection->prepare($statement);
$prepared -> bindParam(":id", $value)
$prepared -> execute();