Chrome-Erweiterungsnachricht wird als Objekt übergeben

Ich sende eine Nachricht vom Inhaltsskript an die Hintergrundseite. Die Nachricht ist eine URL, die dann im Hintergrund analysiert wird. Wenn ich console.log die Daten in @ abgerufbackground.js Das Konsolenprotokoll ist reines HTML, aber wenn ich die Nachricht an mein Inhaltsskript zurücksende, befindet sich die Nachricht plötzlich in einem Objekt, und ich bin nicht sicher, warum.

Hier ist mein Code:

Content_Script.js:

chrome.runtime.sendMessage({greeting: URL}, function(response) {
      console.log(response.farewell); //logs an object: Object {farewell: Object}
      $('#stats-table2').append(response.farewell); //doesn't output anything.
    });

Background.js:

chrome.runtime.onMessage.addListener(
  function(message, sender, sendResponse) {
      getStats(message, sender, sendResponse);
      return true;
});

function getStats(message, sender, sendResponse){
   $.ajax({
     url: message.greeting,
     dataType: 'text',
     success: function(data) {
          var info = $("<div>").html(data)[0].getElementsByTagName("table")[1];
          if(info != undefined) {
            console.log(info); //logs pure HTML into the console..
            sendResponse({farewell:info}); //sends message back.
          }

      }
  });
}

Ich habe Kommentare für die wichtigen Teile hinzugefügt. Ich kann das nicht herausfinden und es macht mich verrückt. Irgendwelche Ideen? Vielen Dank

Antworten auf die Frage(2)

Ihre Antwort auf die Frage