Verilerimi bir php betiğiyle (save-data.php) bir json dosyasına başarıyla kaydediyorum ama edemiyorum get-data.php betiğimle doğru şekilde almak içinSyntaxError: Beklenmeyen belirteci <JSON içinde 0 konumunda, Object.parse (native) (AngularJS)
hata iletisi: angularjs: 12520 SyntaxError: JSON beklenmeyen belirteç < 0 konumunda (yerli) Object.parse de
kaydet-data.php:
<?php
$json = file_get_contents("php://input");
$file = fopen('C:/test/save-data.json','w+');
fwrite($file, $json);
fclose($file);
?>
olsun data.php:
<?php
//header('Content-Type: application/json');
$json = file_get_contents('C:/test/save-data.json');
//Decode JSON
//$json_data = json_decode($json, true);
//Print data
echo $json
?>
tasarruf-Data.JSON:
{
"id": "179",
"var1": "variable1",
"var2": "variable2"
}
örnek kontrolörü:
// save data (myModel: id, var1, var2)
$scope.save = function() {
console.log('Creating a JSON');
$scope.jsonString = angular.toJson($scope.myModel, true);
$http.post('save-data.php', $scope.jsonString).then(function(data) {
$scope.msg1 = 'Data saved';
});
$scope.msg2 = 'Data sent: '+ $scope.jsonString;
};
// get data
$scope.get = function() {
$http.get('get-data.php').then(function(data) {
//$scope.my_data = JSON.parse(data);
console.log(data.data);
});
};
DÜZENLEME: json ne de bunu ayrıştırmak ben json dosyası deşifre etmek gerek yoktu (hepsi komut dosyalarında yorumlanmıştır).
Tarayıcıda 'get-data.php' öğesine giderseniz ne olur? Php kodunuzun yürütülmediğini% 100 garanti edebilirim ve dosya olduğu gibi döndürür. –
Neden get-data.php'nizde 'json_decode()' diyorsunuz? Bu, JSON nesnesini diziye dönüştürür, bu nedenle açısal açılama bundan sonra ayrıştırılamaz ('JSON.parse()', JSON nesnesini bekler). Sadece bu dönüşüm olmadan geçmek. – mitkosoft
, dönüştürme olmadan (json_decode()): angular.js: 12520 Sözdizimi: JSON'da beklenmedik bir simge, Object.parse (yerel) – Ariana