2012-01-18 2 views
1

Je souhaite implémenter une extension Google Chrome pour modifier les requêtes POST. En particulier, je voudrais ajouter un paramètre dans le champ "accept:". J'ai essayé de lancer une recherche sur l'API Google Chrome, mais je n'ai rien trouvé d'utile. La seule chose qui a été mentionnée était d'utiliser l'API WebRequest (non expérimentale).Modification des demandes POST via l'extension Google Chrome

J'ai aussi essayé quelque chose comme ceci:

chrome.webRequest.onBeforeSendHeaders.addListener(
    function(details) { 
    details.requestHeaders['Accept'] = details.requestHeaders['Accept'] + "+mystuff"; 
    console.log(details.requestHeaders['Accept']); 
    return {requestHeaders: details.requestHeaders}; 
    }, 
    {}, 
    ["blocking"]); 

C'est quelque chose modifié à partir de l'API Google Chrome, mais je reçois l'erreur suivante: "Invalid value for argument 1. Property 'urls': Property is required." sur extensions/schema_generated_bindings.js:67.

Depuis que je suis assez nouveau à ce sujet, je suis presque sûr que je vais une erreur très naïve ici. Quelqu'un peut-il m'aider? Merci

Répondre

3

Le docs précise que vous devez fournir une valeur url dans le RequestFilter.

Quelque chose comme cela devrait fonctionner

chrome.webRequest.onBeforeSendHeaders.addListener(
    function(details){...}, 
    { urls: ['http://example.com'] }, 
    ["blocking"] 
); 
+1

Merci beaucoup, cela signifie que je ne peux pas le faire pour chaque site Web? Je voudrais faire ça. – Masiar

+1

Vous devriez essayer '*: // *' alors. Et n'oubliez pas de définir de bonnes autorisations dans le manifeste (tout est dans les docs, abraham a fourni le lien). –

+2

Vous pouvez fournir un tableau de modèles de correspondance et les modèles de correspondance sont documentés: http://code.google.com/chrome/extensions/beta/match_patterns.html – abraham

Questions connexes