diff options
Diffstat (limited to 'files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.md')
-rw-r--r-- | files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.md | 130 |
1 files changed, 68 insertions, 62 deletions
diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.md b/files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.md index 8fe80e8891..8db820818f 100644 --- a/files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.md +++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.md @@ -13,35 +13,34 @@ tags: - registerProxyScript translation_of: Mozilla/Add-ons/WebExtensions/API/proxy/register --- -<p>{{AddonSidebar()}} {{deprecated_header}}</p> +{{AddonSidebar()}} {{deprecated_header}} -<p>Cette méthode était obsolète dans Firefox 68 et sera supprimée de Firefox 71. Dans Firefox 68 ou une version ultérieure, l'appel de cette méthode enregistre un message d'erreur sur la console :</p> +Cette méthode était obsolète dans Firefox 68 et sera supprimée de Firefox 71. Dans Firefox 68 ou une version ultérieure, l'appel de cette méthode enregistre un message d'erreur sur la console : -<p><img alt="" src="proxy_register_warning.png"></p> +![](proxy_register_warning.png) -<p>Enregistre un <a href="/fr/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_%28PAC%29_file">fichier PAC (Proxy Auto-Configuration)</a>. Le fichier est exécuté immédiatement, et sa fonction <code>FindProxyForURL()</code> sera appelée pour toutes les demandes HTTP, HTTPS ou FTP.</p> +Enregistre un [fichier PAC (Proxy Auto-Configuration)](/fr/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_%28PAC%29_file). Le fichier est exécuté immédiatement, et sa fonction `FindProxyForURL()` sera appelée pour toutes les demandes HTTP, HTTPS ou FTP. -<p>Si les fichiers PAC sont enregistrés par plusieurs extensions, les demandes seront initialement transmises à celle qui a été enregistrée en premier.</p> +Si les fichiers PAC sont enregistrés par plusieurs extensions, les demandes seront initialement transmises à celle qui a été enregistrée en premier. -<ul> - <li>Si la fonction <code>FindProxyForURL()</code> dans le premier PAC renvoie "DIRECT" pour une demande, alors la demande sera transmise inchangée à la fonction <code>FindProxyForURL()</code> dans le prochain PAC.</li> - <li>Si la fonction <code>FindProxyForURL()</code> dans le premier PAC transfère la requête en renvoyant "PROXY" ou une autre valeur proxy, l'URL du proxy sera transmise à la fonction <code>FindProxyForURL()</code> dans le prochain PAC.</li> -</ul> +- Si la fonction `FindProxyForURL()` dans le premier PAC renvoie "DIRECT" pour une demande, alors la demande sera transmise inchangée à la fonction `FindProxyForURL()` dans le prochain PAC. +- Si la fonction `FindProxyForURL()` dans le premier PAC transfère la requête en renvoyant "PROXY" ou une autre valeur proxy, l'URL du proxy sera transmise à la fonction `FindProxyForURL()` dans le prochain PAC. -<p>Chaque extension ne peut enregistrer qu'un seul fichier PAC : si vous appelez <code>register()</code> deux fois, le second fichier PACremplacera le premier.</p> +Chaque extension ne peut enregistrer qu'un seul fichier PAC : si vous appelez `register()` deux fois, le second fichier PACremplacera le premier. -<p>C'est une fonction asynchrone qui renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>.</p> +C'est une fonction asynchrone qui renvoie une [`Promise`](/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise). -<h2 id="Communiquez_avec_les_fichiers_PAC">Communiquez avec les fichiers PAC</h2> +## Communiquez avec les fichiers PAC -<p>Vous pouvez échanger des messages entre le fichier PAC et la page d'arrière-plan de votre extension (ou toute autre page privilégiée, comme les pages contextuelles) en utilisant <code><a href="/fr/docs/Mozilla/Add-ons/WebExtensions/API/runtime/sendMessage">runtime.sendMessage()</a></code> et <code><a href="/fr/docs/Mozilla/Add-ons/WebExtensions/API/runtime/onMessage">runtime.onMessage</a></code>.</p> +Vous pouvez échanger des messages entre le fichier PAC et la page d'arrière-plan de votre extension (ou toute autre page privilégiée, comme les pages contextuelles) en utilisant [`runtime.sendMessage()`](/fr/docs/Mozilla/Add-ons/WebExtensions/API/runtime/sendMessage) et [`runtime.onMessage`](/fr/docs/Mozilla/Add-ons/WebExtensions/API/runtime/onMessage). -<p>Pour envoyer un message au fichier PAC, vous devez définir l'option <code>toProxyScript</code> :</p> +Pour envoyer un message au fichier PAC, vous devez définir l'option `toProxyScript` : -<pre class="brush: js">// background.js +```js +// background.js // Log any messages from the proxy. -browser.runtime.onMessage.addListener((message, sender) => { +browser.runtime.onMessage.addListener((message, sender) => { if (sender.url === browser.extension.getURL(proxyScriptURL)) { console.log(message); } @@ -53,31 +52,35 @@ let messageToProxy = { bar: 1234 }; -browser.runtime.sendMessage(messageToProxy, {toProxyScript: true});</pre> +browser.runtime.sendMessage(messageToProxy, {toProxyScript: true}); +``` -<pre class="brush: js">// pac.js +```js +// pac.js -browser.runtime.onMessage.addListener((message) => { +browser.runtime.onMessage.addListener((message) => { if (message.enabled) { browser.runtime.sendMessage("I'm enabled!"); } -});</pre> +}); +``` -<h2 id="Spécification_de_fichier_PAC">Spécification de fichier PAC</h2> +## Spécification de fichier PAC -<p>La syntaxe de base du fichier PAC est décrite dans la <a href="/fr/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file">documentation PAC</a>, mais l'implémentation utilisée par l'API proxy diffère de la conception PAC standard de différentes manières, décrites dans cette section.</p> +La syntaxe de base du fichier PAC est décrite dans la [documentation PAC](</fr/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file>), mais l'implémentation utilisée par l'API proxy diffère de la conception PAC standard de différentes manières, décrites dans cette section. -<h3 id="Valeur_retournée_FindProxyForURL">Valeur retournée FindProxyForURL()</h3> +### Valeur retournée FindProxyForURL() -<p>La norme <code>FindProxyForURL()</code> <a href="/fr/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_%28PAC%29_file#Return_value_format">renvoie une chaîne</a>. Dans Firefox 55 et 56, le fichier PAC utilisé avec l'API proxy renvoie également une chaîne. Dans Firefox 55 <em>seulement</em>, vous devez passer un argument à la valeur de retour "DIRECT", même s'il n'a pas besoin d'argument.</p> +La norme `FindProxyForURL()` [renvoie une chaîne](/fr/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_%28PAC%29_file#Return_value_format). Dans Firefox 55 et 56, le fichier PAC utilisé avec l'API proxy renvoie également une chaîne. Dans Firefox 55 _seulement_, vous devez passer un argument à la valeur de retour "DIRECT", même s'il n'a pas besoin d'argument. -<p>À partir de Firefox 57, <code>FindProxyForURL()</code> peut toujours renvoyer une chaîne, mais peut également (et de préférence) renvoyer un tableau d'objets {{WebExtAPIRef("proxy.ProxyInfo")}}.</p> +À partir de Firefox 57, `FindProxyForURL()` peut toujours renvoyer une chaîne, mais peut également (et de préférence) renvoyer un tableau d'objets {{WebExtAPIRef("proxy.ProxyInfo")}}. -<p>Si le tableau contient plus d'un objet, alors tous les objets <code>ProxyInfo</code> après le premier représentent les basculements : si le proxy à la position N dans le tableau n'est pas accessible quand son <code>ProxyInfo.failoverTimeout</code> expire, alors le navigateur essaiera le proxy à la position N + 1.</p> +Si le tableau contient plus d'un objet, alors tous les objets `ProxyInfo` après le premier représentent les basculements : si le proxy à la position N dans le tableau n'est pas accessible quand son `ProxyInfo.failoverTimeout` expire, alors le navigateur essaiera le proxy à la position N + 1. -<p>Par exemple :</p> +Par exemple : -<pre class="brush: js">const proxySpecification = [ +```js +const proxySpecification = [ { type: "socks", host: "foo.com", @@ -90,28 +93,30 @@ browser.runtime.onMessage.addListener((message) => { host: "bar.com", port: 1060, } -];</pre> +]; +``` -<p>Le premier proxy dans le tableau sera essayé en premier. S'il ne répond pas dans <code>failoverTimeout</code> secondes, le prochain sera essayé, jusqu'à ce que la fin du tableau est atteint.</p> +Le premier proxy dans le tableau sera essayé en premier. S'il ne répond pas dans `failoverTimeout` secondes, le prochain sera essayé, jusqu'à ce que la fin du tableau est atteint. -<h3 id="Environnement_du_fichier_PAC">Environnement du fichier PAC</h3> +### Environnement du fichier PAC -<p>Les fonctions globales d'assistance généralement disponibles pour les fichiers PAC (<code><a href="/fr/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file#isPlainHostName()_2">isPlainHostName()</a></code>, <code><a href="/fr/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file#dnsDomainIs()">dnsDomainIs()</a></code>, etc) ne sont pas disponibles.</p> +Les fonctions globales d'assistance généralement disponibles pour les fichiers PAC ([`isPlainHostName()`](</fr/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file#isPlainHostName()_2>), [`dnsDomainIs()`](</fr/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file#dnsDomainIs()>), etc) ne sont pas disponibles. -<p>Le code qui s'exécute dans le fichier PAC n'a pas accès à :</p> +Le code qui s'exécute dans le fichier PAC n'a pas accès à : -<ul> - <li>outes les fonctions DOM (par exemple, <a href="/fr/docs/Web/API/Window">window</a> ou l'une de ses propriétés)</li> - <li>les API WebExtension sauf <code><a href="/fr/docs/Mozilla/Add-ons/WebExtensions/API/runtime/sendMessage">runtime.sendMessage()</a></code> et <code><a href="/fr/docs/Mozilla/Add-ons/WebExtensions/API/runtime/onMessage">runtime.onMessage</a></code></li> - <li>l' <a href="/fr/docs/Web/API/Console">API console</a> - pour consigner les messages d'un PAC, envoyez un message au script d'arrière-plan :</li> -</ul> +- outes les fonctions DOM (par exemple, [window](/fr/docs/Web/API/Window) ou l'une de ses propriétés) +- les API WebExtension sauf [`runtime.sendMessage()`](/fr/docs/Mozilla/Add-ons/WebExtensions/API/runtime/sendMessage) et [`runtime.onMessage`](/fr/docs/Mozilla/Add-ons/WebExtensions/API/runtime/onMessage) +- l' [API console](/fr/docs/Web/API/Console) - pour consigner les messages d'un PAC, envoyez un message au script d'arrière-plan : -<pre class="brush: js">// pac.js +```js +// pac.js // send the log message to the background script -browser.runtime.sendMessage(`Proxy-blocker: blocked ${url}`);</pre> +browser.runtime.sendMessage(`Proxy-blocker: blocked ${url}`); +``` -<pre class="brush: js">// background-script.js +```js +// background-script.js function handleMessage(message, sender) { // only handle messages from the proxy script @@ -121,39 +126,40 @@ function handleMessage(message, sender) { console.log(message); } -browser.runtime.onMessage.addListener(handleMessage);</pre> +browser.runtime.onMessage.addListener(handleMessage); +``` -<h2 id="Syntaxe">Syntaxe</h2> +## Syntaxe -<pre class="brush: js">var registering = browser.proxy.register( +```js +var registering = browser.proxy.register( url // string ) -</pre> - -<h3 id="Paramètres">Paramètres</h3> +``` -<dl> - <dt><code>url</code></dt> - <dd><code>String</code>. URL pointant vers le fichier PAC à charger. Les fichiers PAC doivent être groupés avec l'extension, et l'<code>url</code> doit être relative au fichier <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a> de l'extension.</dd> -</dl> +### Paramètres -<h3 id="Valeur_retournée">Valeur retournée</h3> +- `url` + - : `String`. URL pointant vers le fichier PAC à charger. Les fichiers PAC doivent être groupés avec l'extension, et l'`url` doit être relative au fichier [manifest.json](/fr/Add-ons/WebExtensions/manifest.json) de l'extension. -<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie sans argument lorsque le fichier PAC a été enregistré ou rejetée en cas d'erreur.</p> +### Valeur retournée -<h2 id="Exemples">Exemples</h2> +Une [`Promise`](/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise) qui sera remplie sans argument lorsque le fichier PAC a été enregistré ou rejetée en cas d'erreur. -<pre class="brush: js">const proxyScriptURL = "proxy/proxy-script.js"; +## Exemples -browser.proxy.register(proxyScriptURL);</pre> +```js +const proxyScriptURL = "proxy/proxy-script.js"; -<p>{{WebExtExamples}}</p> +browser.proxy.register(proxyScriptURL); +``` -<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2> +{{WebExtExamples}} -<p>{{Compat("webextensions.api.proxy.register")}}</p> +## Compatibilité du navigateur -<div class="note"><p><strong>Note :</strong></p> +{{Compat("webextensions.api.proxy.register")}} -<p>Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.</p> -</div> +> **Note :** +> +> Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis. |