recherche

Maison  >  Questions et réponses  >  le corps du texte

angulaire.js - Les requêtes inter-domaines $http.post() et $http() (CORS) ont échoué lorsque jquery inter-domaine a réussi.

Pour cette ressource inter-domaines cors, la requête utilisant jquery est réussie.
(Le code commenté ci-dessous est réussi)

//var url = "http://test.shenmawo.com.cn/wechat/huodong/h22/giveGift";
//
//$.ajax({
//    type : 'post',
//    url : url,
//    data : {
//
//    },
//    dataType : "json",
//    success : function(data, status) {
//        $scope.prize = data;
//    },
//    error : function(data, status, e) {
//        console.log("系统异常" + e);
//    }
//});

Mais $http.post d'angularjs échoue :

$http
.post('http://test.shenmawo.com.cn/wechat/huodong/h22/giveGift', {})
.success(function(data){
    $scope.prize = data;
})
.error(function(err){
    alert(err);
});

L'utilisation de $http([Object]) échoue également :

//$http({
//    url:'http://test.shenmawo.com.cn/wechat/huodong/h22/giveGift',
//    method:'POST',
//    data: {},
//    withCredentials:true,
//    success: function(data){
//      $scope.prize = data;
//    },
//    err:function(err){
//        alert(err);
//    }
//});

De plus, j'ai également ajouté la configuration en fonction des exigences recherchées :

angular.module('zil',['ngRoute'])
.config(['$routeProvider', '$httpProvider',function($routeProvider, $httpProvider){
    $httpProvider.defaults.useXDomain = true;//添加的配置
    $routeProvider
       .when('/',{……})
       .when('/game',{
           templateUrl:XXX,
           controller:function(){
               /*上面所有跨域请求的代码都位于这个位置*/
           }
       });

Comment puis-je utiliser Angularjs pour effectuer des requêtes inter-domaines ?

世界只因有你世界只因有你2775 Il y a quelques jours839

répondre à tous(1)je répondrai

  • 某草草

    某草草2017-05-15 16:53:02

    postCfg = {
      headers: {
        'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'
      },
      transformRequest: function(data) {
        return $.param(data);
      }
    }
    
    app.config([
      '$httpProvider',
      function($httpProvider) {
        $httpProvider.defaults.useXDomain = true;
        delete $httpProvider.defaults.headers.common['X-Requested-With'];
       }
    ]}
    
    $http.post(url, {}, postCfg)

    La méthode que je viens de trouver, le speed test a réussi

    répondre
    0
  • Annulerrépondre