aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/api/permissions_api/index.html
blob: 9fe28e07e76956d7b5de2f9622895a21a8b3621d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
---
title: Permissions API
slug: Web/API/Permissions_API
translation_of: Web/API/Permissions_API
---
<p>{{DefaultAPISidebar("Permissions API")}}{{SeeCompatTable}}</p>

<div class="summary">
<p>Les permissions d'API fournissent une manière consistente de demander programatiquement le statut des permissions dans le context courrant— par exemple, si l'autorisation d'utiliser l'API est accordée ou refusée, <span style="font-size: 1rem; letter-spacing: -0.00278rem;">et si l'utilisateur sera invité à indiquer si une autorisation doit être accordée pour une AP</span><span style="font-size: 1rem; letter-spacing: -0.00278rem;">I.</span></p>
</div>

<h2 id="Conceptes_et_usages">Conceptes et usages</h2>

<p>Historiquement les differentes API gérée leur propres permissions inconsistamment — par example l'API <a href="/en-US/docs/Web/API/Notifications_API">Notifications</a> permet de vérifier explicitement sont status d'autorisation et et d'en faire la demande, alors que l'API de <a href="/en-US/docs/Web/API/Geolocation">Geolocation</a> ne le fait pas (ce qui peut poser des problèmes si l'utilisateur décline la première demande d'autorisation). L'API de permissions fournit l'outil pour autorisé les déveloopers à implementes une meilleure expérience utilisteur.</p>

<p>La propriétée <code>permissions</code> a rendu disponible dans l'objet {{domxref("Navigator")}}, ainsi que dans le context standard du navigateur browsin et dans le context du worker ({{domxref("WorkerNavigator")}} — donc les vérificationd de permissions sont disponible dans les workers), et retournent un obet {{domxref("Permissions")}} qui fournit l'accés aux fonctionalité des Permissions API.</p>

<p>Une fois que vous avez cette objet vous pouvez effectuer une tache nécéssitant des permissions, par exemple demander la permission en utilisant la méthode {{domxref("Permissions.query()")}} pour retourner une promesse qui résous avec {{domxref("PermissionStatus")}} pour une API spécifique.</p>

<p>Toutes les status de permissions d'API ne peuvent être demandé en utilisant Permissions API. API notables prenant en compte les autorisations:</p>

<div class="twocolumns">
<ul>
 <li>
  <p><a href="/en-US/docs/Web/API/Clipboard_API">Clipboard API</a></p>
 </li>
 <li>
  <p><a href="/en-US/docs/Web/API/Notifications_API">Notifications API</a></p>
 </li>
 <li>
  <p><a href="/en-US/docs/Web/API/Push_API">Push API</a></p>
 </li>
 <li>
  <p>Web MIDI API</p>
 </li>
</ul>
</div>

<p>Plus d'APIs devrais être supporté par Permissions API dans le future.</p>

<h2 id="Examples">Examples</h2>

<p>Nous avons fait un exemple simple appelé Location Finder. Vous pouvez <a href="https://chrisdavidmills.github.io/location-finder-permissions-api/">lancer cet exemple en live ici</a>, ou <a href="https://github.com/chrisdavidmills/location-finder-permissions-api/tree/gh-pages">voire le code source sur Github</a>.</p>

<p>Ou en lire plus sur comment cela fonctionne dans notre article <a href="/en-US/docs/Web/API/Permissions_API/Using_the_Permissions_API">Utiliser Permissions API</a>.</p>

<h2 id="Interfaces">Interfaces</h2>

<dl>
 <dt>{{domxref("Navigator.permissions")}} et {{domxref("WorkerNavigator.permissions")}} {{readonlyinline}}</dt>
 <dd>Fournit l'accés à l'objet {{domxref("Permissions")}} depuis context principal ainsi que celui du worker.</dd>
 <dt>{{domxref("Permissions")}}</dt>
 <dd>Fournit la principale fonctionalité de Permission API, tel que les methodes de demande et revocation de permissions.</dd>
 <dt>{{domxref("PermissionStatus")}}</dt>
 <dd>Fournit l'accés au status actuel d'une permission, et un gestionnaire d'évenement pour répondre au changements de status d'une permission.</dd>
</dl>

<h2 id="Specification">Specification</h2>

<table class="standard-table">
 <tbody>
  <tr>
   <th scope="col">Specification</th>
   <th scope="col">Status</th>
   <th scope="col">Comment</th>
  </tr>
  <tr>
   <td>{{SpecName('Permissions API')}}</td>
   <td>{{Spec2('Permissions API')}}</td>
   <td>Initial definition.</td>
  </tr>
 </tbody>
</table>

<h2 id="Browser_compatibility">Browser compatibility</h2>

<div>
<h3 id="Permissions_interface"><code>Permissions</code> interface</h3>

<div>


<p>{{Compat("api.Permissions")}}</p>
</div>
</div>

<h2 id="See_also">See also</h2>

<ul>
 <li><a href="/en-US/docs/Web/API/Permissions_API/Using_the_Permissions_API">Using the Permissions API</a></li>
 <li><a href="https://blog.addpipe.com/using-permissions-api-to-detect-getusermedia-responses/">Using the Permissions API to Detect How Often Users Allow or Deny Camera Access</a></li>
</ul>