2015-11-03 52 views
0

我有角度做的前端。并由yii2(rest)制作后端。 我在后端添加了'Access-Control-Allow-Origin:*'标题。 如何我甘蔗可以做角度跨域发布请求? 如果我执行这个代码,我不得不OPTIONS请求,不POST:我怎样才能做角度跨域后的请求?

$http 
     .post(API_URL+'auth/login', $scope.credentials) 
     .error(function(error){ 
      Notification.error(error.message); 
      $scope.credentials.sending = false; 
     }) 
     .then(function (res) { 
      $cookies.putObject('currentUser', res.data); 
      $rootScope.user = res.data; 
      $state.go('dashboard'); 
     }); 

回答

0

有使用CORS一些功能。如果您使用cookie,您应该使用with-credentials标志并在后端允许使用此标头。还有一些标题。你可以在这里读到它。 http://www.html5rocks.com/en/tutorials/cors/

+0

我不使用cookies。我需要设置正确的角度 – Buboon

+0

所以你需要在后端侧定义允许标题。它也适用于我。示例:res.header('Access-Control-Allow-Origin','http:// localhost:3000') res.header('Access-Control-Allow-Methods','POST,GET,DELETE,OPTIONS, PUT') res.header('Access-Control-Allow-Credentials',true) res.header('Access-Control-Allow-Headers','Access-Control-Allow-Headers,Access-Control-Allow-凭证,访问控制 - 允许 - 方法,内容类型,访问控制 - 允许 - 来源') – Errorpro