No' Access-Control-Allow-Origin'标头出现在请求的资源上。起源' http:// localhost:8100'因此不允许访问

时间:2017-04-08 19:26:35

标签: javascript angularjs node.js ionic-framework

server.js我已经宣布了权限

app.use(function(req, res, next) {
  res.header("Access-Control-Allow-Origin", "*");
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
  next();
});

app.js

angular.module('app', ['ionic', 'ui.router'])

.config(('$urlRouterProvider', '$stateProvider', function($urlRouterProvider,$stateProvider){
    $urlRouterProvider.otherwise('/');
    $stateProvider
    .state('view',{
      url:'/',
      templateUrl:'js/components/view/view.html',
      controller:'viewCtrl'
    })

}))

view.js

.controller('viewCtrl',['$scope','$state','$http',function($scope,$state,$http)
{   

    $scope.pics=[];
    $http.get('http://localhost:8080/getNewPhoto').then(function(response){
        $scope.pics=response.data;
    },function(err)
    {
        console.error("There's an error"+err);
    })
}])

请帮助我解决这个问题我已经尝试了所有可能的解决方案,但问题仍然存在

2 个答案:

答案 0 :(得分:0)

只需使用快递的cors module,您就可以了:

var express = require('express')
var cors = require('cors')
var app = express()

app.use(cors())

答案 1 :(得分:0)

您必须添加重要标头。将该行添加到服务器脚本:

res.header('Access-Control-Allow-Methods','POST, GET, OPTIONS, PUT');