<html>
<head>
<meta http-equiv="access-control-allow-origin" content="https://openapi.lechange.cn">
<script type="text/javascript" src="js/jquery-1.11.3.min.js"></script>
<script>
$.post('https://openapi.lechange.cn/openapi/accessToken',{"system":{"ver":"1.0","sign":"5326bdd79317a8cd215b649e75e042b6","appid":"lace1fdddaa5de4393","time":"1491895621","nonce":"49735441495760803893403522385895","appSecret":"6d5c2c727dbb4ba78fac5a0e9ece82"},"params":{"phone":"17691260000"},"id":"80"},function(data){console.log(data);},'json');
</script>
</head>
<body>
<a></a>
</body>
</html>
Lors de l'exécution sur Firefox, le message d'erreur suivant apparaît. Requête d'origine croisée bloquée : La politique de même origine interdit la lecture de la ressource distante située à l'adresse https://openapi.lechange.cn/o... (Cause : l'en-tête CORS 'Access-Control-Allow-Origin' est manquant).
La solution trouvée dans les recherches en ligne consiste à ajouter un en-tête à la page demandée. Cela ne peut pas être géré, et d'autres méthodes ne peuvent pas non plus le résoudre. Comment le résoudre?
CORS n'a généralement pas besoin d'être configuré dans le navigateur. Le navigateur détecte que cette requête AJAX d'origine croisée est une requête simple et ajoute automatiquement un champ Origine aux informations d'en-tête. Le champ Origine est utilisé pour indiquer quelle source (protocole). ) provient de cette requête. + nom de domaine + port).
Le serveur décide d'accepter ou non la demande en fonction de cette valeur, ce qui signifie que le serveur aura une liste blanche indiquant quelles sources sont autorisées, et Access-Control-Allow-Origin est inclus dans la liste blanche en-tête de réponse.
Le navigateur constate que les informations d'en-tête de cette réponse ne contiennent pas le champ Access-Control-Allow-Origin. Il sait donc que quelque chose s'est mal passé et renvoie une erreur. Autrement dit, l'invite que vous avez rencontrée indique que le résultat renvoyé était. intercepté par le navigateur, et ce n’est pas que la demande ne puisse pas être envoyée.
Il vous faut donc configurer cette liste blanche sur le serveur, pas changer la page.
Pour le principe de CORS, vous pouvez vous référer à cet article
Pour comment configurer Tomcat, vous pouvez lire ce document
Pouvez-vous utiliser jsonp sur plusieurs domaines ?
cors ne nécessite pas de configuration front-end, laissez vos ingénieurs back-end le configurer sur le serveur
Nginx ajoute la prise en charge des en-têtes
Utilisez node ou python pour écrire un relais de robot ou ajouter un proxy
Collez le code suivant en haut du fichier d'entrée côté serveur