Maison >interface Web >js tutoriel >Comment gérer l'erreur d'accès inter-domaines Ajax 501
Cette fois, je vais vous montrer comment gérer l'erreur 501 signalée par l'accès inter-domaines ajax. Quelles sont les précautions pour gérer l'erreur d'accès inter-domaines ajax. cas, jetons un coup d'oeil.
Problème : erreur d'accès inter-domaines ajax 501
L'exécution du code suivant signalera l'erreur 501
$.ajax({ type: "POST", url: "http://192.168.1.202/sensordata.php", contentType:'application/json; charset=utf-8', data: JSON.stringify(ajaxPostData), dataType:'json', success: function(data){ //On ajax success do this console.info("success."); if (data["status"] == "ok"){ alert("Settings is Ok. The Machine is rebooting."); } }, error: function(xhr, ajaxOptions, thrownError) { //On error do this console.info("error."); if (xhr.status == 200) { alert(ajaxOptions); } else { alert(xhr.status); alert(thrownError); } } });
Solution :
Supprimer contentType:'application/json; charset=utf-8'
Raison :
1 Lors du croisement de domaines, sauf lorsque le contentType est application/x-www-form-urlencoded, multipart/form-data ou text/plain, le navigateur sera déclenché pour envoyer la méthode OPTIONS demander d'abord.
2 Par exemple, votre requête d'origine est la méthode POST Si le résultat renvoyé par la première requête est l'attribut Allow dans le Header, il n'y a pas de POST.
3 Ensuite, la deuxième requête ne sera pas envoyée. À ce moment, la console du navigateur signalera une erreur, vous indiquant que la méthode POST n'est pas prise en charge par le serveur.
Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !
Lecture recommandée :
Comment faire Recherche de correspondance intelligente par mot-clé Ajax
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!