Получение данных JSON с помощью Ajax для Cytoscape
Я пытаюсь опубликовать сеть с Cytoscape web (или cytoscape.js, если это возможно). Поскольку мои данные очень большие, я предпочитаю экспортировать их с рабочего стола Cytoscape и захватить их с помощью ajax в моем html. До последней версии Cytoscape (v.3.1.0) я мог экспортировать сеть в формате.xml, используя это:
$.ajax({
type: "GET",
url: "data.xml",
dataType: "xml",
error: function(){
alert("Error loading file");
},
success: function(data){
data = (new XMLSerializer()).serializeToString(data);
});
vis.draw({ network: data });
и это работало просто отлично.
Когда я пытаюсь сделать то же самое с.json (либо конвертированным из.xml, либо экспортированным как.cyjs с рабочего стола Cytoscape), это не работает. Я использовал подобный код для этого:
$.ajax({
type: "GET",
url: "data.json",
dataType: "json",
error: function(){
alert("Error loading file");
},
success: function(data){
}
});
var netwdata = data.elements[0];
vis.draw({ network: netwdata });
Хотя я не получаю сообщение об ошибке загрузки, сеть не строится в настоящее время. У меня нет опыта работы с.json, поэтому я уверен, что что-то упустил. Любая помощь или комментарий приветствуются.
1 ответ
Я думаю, что вы не написали сериализатор для данных JSON. Проще говоря, вы не конвертировали объект json в строку. Как вы использовали для XML:
data = (new XMLSerializer()).serializeToString(data);