AngularjsでのJSONの受信処理で上手くいかないので相談させてください。
以下のようなJSONが投げられてきたとします。
lang
1{ 2 "message": "投稿受理しました。", 3 "filename": "617e2c26fa8c1056111c35175ebeaadd9f92c12c.jpg", 4 "insertid": "63", 5 "error": "" 6}
これを
then(function(feeds) {
$scope.respon = feeds;
$scope.updata = feeds.response;
alert("OKだよーん");
// Success!
},
で受けます。その際にfeeds.responseの中に投げたJSONが入っていることは確認出来ています。{{updata}}とhtml上に書くと上記jsonがでてくるため)
しかしながら、{{updata.message}}や{{updata.filename}}と
すると表示されません。なぜでしょうか?
2016/1/19加筆します。
lang
1 for (var i = 0; i < results.length; i++) { 2 alert('Image URI: ' + results[i]); 3 // 1ファイルずつサーバへアップロード 4 $cordovaFileTransfer.upload( 5 "アップロード先URLでここからsonが返ってくる", results[i], {} 6 ).then(function(feeds) { 7 //$scope.$apply(function(){ 8 $scope.respon = feeds.response; 9 var textdata = feeds.res; 10 $scope.updata= textdata; 11 alert("OKだよーん"); 12 // Success! 13 //}); 14 }, function(err) { 15 alert("投稿に失敗しました。ネットワークに接続できていない可能性があります。ネットワークが接続出来る環境で再度投稿お願いします。"); 16 // Error 17 }, function (progress) { 18 // constant progress updates 19 }); 20 }
で実際には受け取っています。
いろいろ確認したところ、feedsで受け取っている時にjsonの中身をテキストデータとして受信してしまっているのではないか?という疑惑を持っています。
実際に、respond.lengthをしてみると、配列が4つのはずなのに、138と返ってきて、文字数っぽい気がしています。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。