对飞行前请求的响应没有通过访问控制检查

我在使用ngResource调用AmazonWeb服务上的RESTAPI时出错:

XMLHttpRequest无法加载http:/server.apiurl.com:8000/s/login?login=facebook..对飞行前请求的响应不会通过访问控制检查:请求的资源上没有“访问-控制-允许-原产地”标题。起源‘http://localhost因此不允许进入。误差405

服务:

socialMarkt.factory('loginService', ['$resource', function($resource){    
    var apiAddress = "http://server.apiurl.com:8000/s/login/";
    return $resource(apiAddress, { login:"facebook", access_token: "@access_token" ,facebook_id: "@facebook_id" }, {
                getUser: {method:'POST'}
            });}]);

主计长:

[...]loginService.getUser(JSON.stringify(fbObj)),
                function(data){
                    console.log(data);
                },
                function(result) {
                    console.error('Error', result.status);
                }[...]

我正在使用Chrome,我不知道还能做些什么来解决这个问题。我甚至将服务器配置为从原点接受标头localhost.

对飞行前请求的响应没有通过访问控制检查

繁星淼淼
浏览 3837回答 3
3回答

当年话下

我的“API Server”是一个PHP应用程序,因此为了解决这个问题,我找到了以下解决方案:把线放进去index.phpheader('Access-Control-Allow-Origin: *');header('Access-Control-Allow-Methods: GET, POST, PATCH, PUT, DELETE, OPTIONS');header('Access-Control-Allow-Headers: Origin, Content-Type, X-Auth-Token');
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript