Rozszerzenie Chrome Przekazywanie wiadomości: odpowiedź nie została wysłana

Próbuję przekazywać wiadomości między skryptem treści a rozszerzeniem

Oto, co mam w skrypcie treści

chrome.runtime.sendMessage({type: "getUrls"}, function(response) {
  console.log(response)
});

W skrypcie tła mam

chrome.runtime.onMessage.addListener(
  function(request, sender, sendResponse) {
    if (request.type == "getUrls"){
      getUrls(request, sender, sendResponse)
    }
});

function getUrls(request, sender, sendResponse){
  var resp = sendResponse;
  $.ajax({
    url: "http://localhost:3000/urls",
    method: 'GET',
    success: function(d){
      resp({urls: d})
    }
  });

}

Teraz, jeśli wyślę odpowiedź przed wywołaniem ajax wgetUrls funkcja, odpowiedź jest wysyłana pomyślnie, ale w metodzie powodzenia wywołania ajax, gdy wysyłam odpowiedź, której nie wysyła, kiedy przechodzę do debugowania, widzę, że w kodzie jest pustysendResponse funkcjonować.

questionAnswers(3)

yourAnswerToTheQuestion