angulaire.js - Comment configurer en détail la demande de publication émise par angulairejs $resource?
高洛峰
高洛峰 2017-05-15 16:51:40
0
2
589

Le service d'Angular est défini comme ceci (le loginModule est défini dans un autre fichier, c'est donc juste une référence sans écrire le deuxième paramètre) :

angular.module('loginModule').factory('askSecCode',['$resource',
    function askSecCodeFactory($resource){
        return $resource('http://192.168.31.108:8080/retailer/user/auth',{},{crossOrigin:'Anonymous',userName:'QD100',userPass:'1234',checkCode:'1234'});
    }
]);

Voici comment le service est utilisé dans le contrôleur :

$scope.loginJump = function(info){
    askSecCode.save(
        {
            userName:info.staffID,
            userPass:info.password,
            checkCode:info.security
        },
        function(){
            console.log('post sent');
        }
    );
    //TODO: ??[?????????????????????][????]
    //TODO: ????????location.assign();
};

La requête résultante est la suivante :

Et le résultat de la requête est une erreur

J'ai utilisé jquery pour demander le même emplacement avec succès. Les détails de la demande sont les suivants, ce qui est en effet différent de la demande angulaire

Aide : Comment puis-je faire en sorte que les requêtes envoyées par angulairejs soient acceptées par le backend en tant que requêtes inter-domaines CORS comme jquery ?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

répondre à tous(2)
迷茫

Votre problème est dû à un type de contenu incohérent dans l'en-tête. La valeur par défaut dans jquery est application/x-www-form-urlencoded, tandis qu'en angulaire, la valeur par défaut est application/json. Si vous voulez qu'Angular fasse la même requête que jquery, changez simplement l'en-tête des ressources

洪涛

Paramètres du back-end

header('Access-Control-Allow-Origin:http://192.168.31.172:8000');
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal