2015-07-02 7 views
0

как правильно использовать поля данных в javascript? Я не знаю, как развернуть их ... например, я могу использовать данные, но я не могу использовать TaskName, находящееся под данными. Пожалуйста, помогите поблагодарить вас.поля данных ответа json api

Если я анализирую ответ так: var data = JSON.parse(responseBody);

как я добраться до поля, как TASKNAME ?? Обычно я бы попробовал что-то вроде data.TaskName === "003021919913"; , но это не работает.

{ 
    "Data": { 
    "QRCode_ID": 168, 
    "Repairer_ID": null, 
    "AssignedToEmployee_ID": null, 
    "TaskName": "003021919913", 
    "DueDate": "2015-07-02T00:12:53.597", 
    "DueDateTimeSpan": 1959471956224, 
    "TaskStatus_ID": 1, 
    "Description": "due 6/30, 5:00", 
    "TaskUrgency_ID": null, 
    "TaskType_ID": null, 
    "DueDateDisplay": "2015-07-02 00:12",....... 
     } 
    }, 
    "Messages": [ 
    "success" 
    ] 
} 

ответ

0

Udated Ответ:

Вы должны быть в состоянии получить доступ к "TASKNAME" через data.Data.TaskName.

В этом случае ваша библиотека хранит ваш объект JSON в var data. эта переменная становится ссылкой на объект, внутри объекта он имеет свойство Data, которое содержит свойство, которое вы хотите использовать, с которым вы можете получить доступ к синтаксису w/dot.

Теперь что-то еще, что может вас подцепить. В тесте, вы хотите, чтобы убедиться, что тестирование TaskName против строкового значения 003021919913 в этом случае, если вы тестируете его против числа, вам нужно сделать что-то вроде:

var taskNameTest = parseInt(data.Data.TaskName); 
assert(taskNameTest).equal(003021919913); //not sure what assertion library you're using. 

надеюсь, что помогает.

+0

спасибо за ваш ответ. Я вызываю API с помощью инструмента Postman, и я пытаюсь провести его тест с помощью инструмента Jetpacks. В основном я вызываю API, тогда тест анализирует тело ответа с помощью этой строки: var data = JSON.parse (responseBody); Оттуда мне нужно сделать тест, который проверяет одно из полей данных, то есть имя задачи равно определенной строке в этом случае 003021919913. так что там, где im работает в проблемах, потому что если я пишу data.TaskName = "003021919913" it говорит, что он не может его найти, потому что, предположительно, я не сверля на один уровень, потому что я не знаю, как ... – besaidAuroch

+0

Я просто посмотрел на обновленный вопрос - вы должны быть abl eto получить его с data.Data.TaskName – Brodie

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