Я пытаюсь проанализировать bit.ly JSON ответ в JavaScript.
Я получаю JSON через XmlHttpRequest.
var req = new XMLHttpRequest;
req.overrideMimeType("application/json");
req.open('GET', BITLY_CREATE_API + encodeURIComponent(url)
+ BITLY_API_LOGIN, true);
var target = this;
req.onload = function() {target.parseJSON(req, url)};
req.send(null);
parseJSON: function(req, url) {
if (req.status == 200) {
var jsonResponse = req.responseJSON;
var bitlyUrl = jsonResponse.results[url].shortUrl;
}
Я делаю это в дополнении Firefox. Когда я работаю, я добираюсь, ошибка "jsonResponse не определена" для строки var bitlyUrl = jsonResponse.results[url].shortUrl;
. Я делаю что-то не так в парсинге JSON здесь? Или что не так с этим кодом?
я думаю, что для использования responseJSON
необходимо включить jQuery.
Без jQuery можно попробовать с помощью responseText и попробовать как eval("("+req. responseText+")");
UPDATE:Пожалуйста, ознакомьтесь с комментарием, относящимся к eval
, вы можете протестировать с eval, но не используйте его в рабочем расширении.
Или
используйте json_parse : он не использует eval