2012-08-05 18 views
5

sto cercando di giocare con un'estensione Chrome di base che va qualcosa come questoAjax chiamata non funziona estensione Chrome con v2 manifesta

chrome.omnibox.onInputChanged.addListener(function(text, suggest){ 
     var baseUrl = "http://sample.com"; 
     var finalResult = []; 
       $.ajax({ 
        url : baseUrl, 
        dataType : "jsonp", 
        success: function(result) { 
            for (var i=0; i<result[1].legnth; i++){ 
              finalResult.push(
               {content : result[1][i], description : result[1][i]} 
             ); 
            } 
            suggest(finalResult); 
           }, 
        async: false 
       });   
}); 

Questo funziona con manifesta la versione 1, ma quando lo cambio a v2 , Sto ricevendo il seguente errore. Apprezzerei qualsiasi aiuto :)

Rifiutato di caricare lo script 'http://sample.com' perché viola la seguente direttiva Content Security Policy: "script-src 'self' chrome-extension-resource:" .

risposta

8

Si dovrebbe leggere su Content Security Policy

completare il tuo file manifesto con:

"content_security_policy": "script-src 'self' http://sample.com; object-src 'self'", 
+0

Grazie per il vostro aiuto. Questo non sembra aggiustarlo per qualche motivo. Quindi, se ho http://sample.com/w/api.php?format=json&action=opensearch&search= "" e aggiungo una parola chiave di ricerca e chiamo su .ajax, citando semplicemente http://sample.com in il file manifest dovrebbe risolverlo correttamente? – iman453

+0

oh il link ce l'aveva però, "content_security_policy": "script-src 'self' https://example.com; object-src 'self' ", – iman453

+0

Sì, la prima volta che mi sono confuso ho modificato anche ora –

Problemi correlati