2015-12-04 3 views
0

Я использую AngularJS опубликовать, чтобы получить JSON от сервера Django: все идет хорошо, но когда я получаю ответ, который JSON не является «чистым» в формате JSON:Django - Как читать JSON с angularJS?

Джанго код:

def get_sim_list(): 
    t_sim = RD_sim_list.objects.all() 
    t_list_sim = {} 
    for sim in t_sim : 
    t_list_sim['sim_id'] = sim.sim_id 
    t_list_sim['sim_iccid'] = sim.sim_iccid 
    return JsonResponse(t_list_sim, safe=False) 

AngularJS код:

$http.post("./LoadJSON/", {mode:"1" ,submode:"1"}) 
        .then(function(response) 
         { 
         var json_data = response.data; 
         for(var i=0;i < json_data.length ;i++) 
          { 
          t_list.push({ 
           pk:json_data[i].sim_id, 
           sim_iccid:json_data[i].sim_iccid}); 
          } 
         }) 

этот код работает, но когда я извлечь данные я получаю этот результат:

Content-Type: application/json 

{sim_id: "1", sim_iccid: "123456"} 

Ofc Я могу удалить «Content-Type и т. Д.», Но как сказать серверу не распечатать его?

plus: как я могу разобрать «нечистые» данные JSON?

Спасибо!

+0

Это в заголовок HTTP. Он не является частью тела контента и не имеет никакого эффекта на выходе. –

ответ

0

попробовать $http.post("./LoadJSON/", {"mode":"1" ,"submode":"1"}) вместо $http.post("./LoadJSON/", {mode:"1" ,submode:"1"})

+0

Это не работает ... ._. " – Andrea

0

Почему вы хотите, чтобы изобретать колесо? Если у вас есть пользовательский json-подобный fileformat, тогда вам придется написать свою собственную функцию для анализа данных.

Попробуйте для разбора стандартного JSON:

var str = '{"key": "value", "key2": "value2"}'; 
var jsonObj = JSON.parse(str); 
+0

Мой вопрос: почему мой сервер печатает" Content-Type: application/json "?. – Andrea

Смежные вопросы