javascript - Le fichier de téléchargement inter-domaines ajaxupload peut renvoyer une valeur, mais entre toujours une erreur et n'entre pas de succès. Pourquoi ?
迷茫
迷茫 2017-05-16 13:03:07
0
3
568

$.ajaxFileUpload({

 url:"http://192.168.0.222:8080/Erp_V0.1/admin/upload/uploader.php", //Chemin du script pour le traitement des images
        tapez : 'post', //Méthode de soumission
        données : upload_arr,//paramètres personnalisés
        secureuri:false, //S'il faut activer la soumission sécurisée
        fileElementId:id, //ID de contrôle de fichier
        dataType : "jsonp", // Le type de données est jsonp
        jsonp: "jsonpCallback",//Le serveur est utilisé pour recevoir les paramètres du nom de fonction de l'appel de rappel
        success : function (data){ //Fonction de traitement exécutée automatiquement après une soumission réussie
            alerte (1111);
            alerte (données);
        },
        erreur : fonction (données, statut, e) {
            alerte (2222);
            alerte(e);
            alerte(JSON.stringify(données));
            alerte (statut);
        }
    }) 
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

répondre à tous(3)
世界只因有你

jsonp cross-domain ne prend en charge que le mode get Même si votre front-end est défini en mode publication, il sera automatiquement converti en mode get.
La méthode d'implémentation de jsonp est en fait la même que l'adresse de requête de script, sauf que le jsonp d'ajax l'encapsule. Comme vous pouvez l'imaginer, jsonp ne prend pas en charge la méthode POST. Par conséquent, si votre code côté serveur utilise la méthode post, il ne pourra pas effectuer de requête.
Bien sûr, si vous vous forcez à utiliser la méthode post pour la communication inter-domaines, vous ne pouvez rien faire.
Modifications côté client :
``
Ajouté : crossDomain : true
Modification : dataType : "json"
``
Côté serveur ajouté :

header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: POST');
header('Access-Control-Max-Age: 1000');

Bien que cela soit réalisable, cela présente des inconvénients et le délai de demande est relativement long. Vous pouvez peser vous-même le pour et le contre.

Enfin, joignez un message de question connexe sur Stackoverflow :
http://stackoverflow.com/ques...

为情所困

Je me souviens avoir utilisé Get for Jsonp sur tous les domaines. .Mais si vous insistez pour publier, il y a http://www.jb51.net/article/6..., je ne l'ai pas essayé.

巴扎黑

Tout d'abord, clarifions les connaissances liées à plusieurs domaines et à jsonp
jsonp est créé avec des balises de script
Si la publication doit être multi-domaine, vous devez ajouter Access-Control-Allow-Origin au backend

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal