Maison > Questions et réponses > le corps du texte
La requête $http.jsonp d'angularjs rapporte une erreur, le code est le suivant :
data = {
a:A,
b:B,
c:C,
}
$http.jsonp('url',data).success(function(res){
console.log(res);
}).error(function(err){
console.log(err);//控制台打印fasle
})
并报错:Uncaught SyntaxError: Invalid or Unexpected token url(请求链接)
Cliquez sur ce lien, récupérez les données, vérifiez-les dans la vérification en ligne json et constatez qu'il y a un saut de ligne dans le champ B, mais vous ne trouvez aucun saut de ligne lorsque vous y accédez dans le navigateur en utilisant le lien . J'ai contacté le backend, et le backend a dit qu'il n'y avait pas de saut de ligne lors de l'entrée dans la base de données, et que mon front-end ne pouvait pas obtenir les données et ne pouvait pas les traiter. Quelle autre raison pourrait être la raison de cette situation et comment devrait-elle le faire. Je le résous ?
仅有的幸福2017-05-15 17:16:04
Merci pour l'invitation. Je n'ai pas vu l'adresse. Il devrait y avoir un problème avec le format des données renvoyées.
Vous pouvez ouvrir https://www.w3schools.com/js/... dans le navigateur, puis utiliser les outils de développement pour afficher le panneau Réseau afin d'afficher les informations HTTP.
Exemple d'utilisation de l'objet XMLHttpRequest pour demander des données
<!DOCTYPE html>
<html lang="en" ng-app="myapp">
<head>
<meta charset="UTF-8">
<title>Angular Repeat-Done Demo</title>
<script src="https://cdn.bootcss.com/angular.js/1.6.3/angular.min.js"></script>
</head>
<body ng-app="myapp">
<p ng-controller="AppCtrl">
<h4>Users List</h4>
<ul>
<li ng-repeat="member in members">
<p>
ID:<span>{{member.id}}</span>
Name: <span>{{member.login}}</span>
</p>
</li>
</ul>
</p>
<script type="text/javascript">
var myapp = angular.module("myapp", [])
.controller("AppCtrl", ['$scope', function ($scope) {
$scope.getMembers = function () {
let MEMBERS_URL = `https://api.github.com/orgs/angular/members?page=1&per_page=5`;
let xhr = new XMLHttpRequest();
xhr.open("GET", MEMBERS_URL);
xhr.onreadystatechange = () => {
if (xhr.readyState == 4 && xhr.status == 200) {
if (xhr.responseText) {
try {
// 手动触发脏值监测
$scope.$apply(function() {
// 在转JSON对象前,对xhr.responseText进行数据格式化
$scope.members = JSON.parse(xhr.responseText);
});
} catch (error) {
throw error;
}
}
}
};
xhr.send(null); // (6)
};
$scope.getMembers();
}])
</script>
</body>
</html>
世界只因有你2017-05-15 17:16:04
$(document).ready(function(){
$.ajax({
type: "get",
async: false,
url: url,
dataType: "jsonp",
jsonp: "callback",
jsonpCallback:"JSON_CALLBACK",
success: function(json){
if (json) {
try {
// 手动触发脏值监测
$scope.$apply(function() {
console.log(json);
});
} catch (error) {
throw error;
}
}
},
error: function(err){
console.log(err);
}
});
});