Valinnaiset käyttöoikeudet ja ajonaikaiset pyynnöt
Pyydä käyttöoikeuksia tarvittaessa etukäteispyyntöjen sijaan, jotta rakennat luottamusta, läpäiset tarkistukset nopeammin ja pienennät hyökkäyspinta-alaa.
Valinnaiset käyttöoikeudet ja ajonaikaiset pyynnöt on ilmainen Selainlaajennusten kehittäminen (Chrome ja Edge)-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Selainlaajennusten kehittäminen (Chrome ja Edge)-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Selainlaajennusten kehittäminen (Chrome ja Edge)-kurssilla on yhteensä 4 oppituntia.
Kaiken pyytämisen ongelma
Monien käyttöoikeuksien pyytäminen asennuksen yhteydessä pelottaa käyttäjiä ja hidastaa kaupan tarkistusta. Vähimpien oikeuksien periaate tarkoittaa, että pyydätte vain tarvittavia oikeuksia ja vasta silloin, kun niitä tarvitaan.
Valinnaisten käyttöoikeuksien ansiosta voitte pyytää niitä ajon aikana ja oikeassa yhteydessä.
Pakolliset ja valinnaiset käyttöoikeudet
Manifestissa erotetaan permissions (myönnetään asennuksen yhteydessä) ja optional_permissions (pyydetään myöhemmin). Siirtäkää kaikki ei-välttämättömät oikeudet valinnaisiksi.
{
"permissions": ["storage"],
"optional_permissions": ["bookmarks", "history"]
}Valinnaiset isäntäkoneiden käyttöoikeudet
Myös sivustojen käyttöoikeudet voivat olla valinnaisia. Määrittäkää ne kohdassa optional_host_permissions, jotta käyttäjät myöntävät käyttöoikeuden tietyille sivustoille vain halutessaan.
{
"optional_host_permissions": ["https://*/*"]
}Pyytäminen ajon aikana
Kutsukaa permissions.request-menetelmää käyttäjän toiminnon, kuten painikkeen napsautuksen, seurauksena. Selain näyttää kehotteen.
const granted = await chrome.permissions.request({
permissions: ['bookmarks']
})
console.log('Granted: ' + granted)Pyynnön on perustuttava käyttäjän toimintaan
Pyynnön kehote näytetään vain, jos sen käynnistää suora käyttäjän toiminto. Sen kutsuminen käynnistyksen yhteydessä tai ajastimesta epäonnistuu äänettömästi.
Liittäkää se napsautusten käsittelijään.
button.addEventListener('click', async () => {
await chrome.permissions.request({ permissions: ['history'] })
})Tarkistaminen ennen käyttöä
Tarkistakaa ennen API:n kutsumista, onko käyttöoikeus tällä hetkellä myönnetty, käyttämällä permissions.contains-menetelmää.
const has = await chrome.permissions.contains({
permissions: ['bookmarks']
})
if (has) loadBookmarks()Käyttöoikeuksien poistaminen
Antakaa käyttäjien peruuttaa käyttöoikeudet, joita he eivät enää halua, käyttämällä permissions.remove-menetelmää. Tämä pienentää hyökkäyspinta-alaa.
await chrome.permissions.remove({ permissions: ['history'] })Myöntöihin ja peruutuksiin reagoiminen
Kuunnelkaa tapahtumia onAdded ja onRemoved, jotta voitte ottaa ominaisuudet käyttöön tai poistaa ne käytöstä käyttöoikeuksien muuttuessa.
chrome.permissions.onRemoved.addListener((p) => {
console.log('Removed: ' + p.permissions)
})Pyyntövirran suunnittelu
Selittäkää ennen kehotteen näyttämistä, miksi tarvitsette käyttöoikeuden. Lyhyt lause ja selkeä painike tuottavat huomattavasti enemmän myönnettyjä käyttöoikeuksia kuin yllättävä järjestelmäikkuna.
Nopeampi kaupan tarkistus
Laajennukset, joilla on laajat asennuksen yhteydessä pyydettävät käyttöoikeudet, joutuvat perusteellisempaan tarkistukseen. Arkaluonteisten oikeuksien siirtäminen valinnaisiksi nopeuttaa usein hyväksyntää ja vähentää varoitusbannerien määrää.
Hallittu toimintojen rajoittuminen
Käsitelkää aina tilanne, jossa käyttöoikeus evätään. Poistakaa ominaisuus käytöstä tai piilottakaa se virheiden heittämisen sijaan, jotta laajennuksen muu osa toimii edelleen.
if (!granted) showFallbackMessage()Pikatarkistus
Testatkaa valinnaisia käyttöoikeuksia koskevat tietonne.
Kertaus
Opitte pyytämään käyttöoikeuksia ajon aikana:
- Jakakaa pakolliset ja
optional_permissions-käyttöoikeudet - Pyytäkää niitä käyttäjän toiminnon yhteydessä käyttämällä
permissions.request-menetelmää - Tarkistakaa käyttöoikeus
contains-menetelmällä ja perukaa seremove-menetelmällä - Reagoikaa tapahtumiin
onAddedjaonRemoved - Rajoittakaa toimintaa hallitusti, kun käyttöoikeus evätään
Vähimpien oikeuksien mukainen suunnittelu rakentaa luottamusta ja helpottaa kaupan tarkistusta.
Opi JavaScript tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 12
- Oppitunnit
- 48
Usein kysytyt kysymykset
Onko oppitunti ”Valinnaiset käyttöoikeudet ja ajonaikaiset pyynnöt” ilmainen?
Kyllä – oppitunnin ”Valinnaiset käyttöoikeudet ja ajonaikaiset pyynnöt” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Selainlaajennusten kehittäminen (Chrome ja Edge)-kurssin, päivitä CoddyKit PROhon. Selainlaajennusten kehittäminen (Chrome ja Edge)-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Valinnaiset käyttöoikeudet ja ajonaikaiset pyynnöt”?
Pyydä käyttöoikeuksia tarvittaessa etukäteispyyntöjen sijaan, jotta rakennat luottamusta, läpäiset tarkistukset nopeammin ja pienennät hyökkäyspinta-alaa. Harjoittelet Selainlaajennusten kehittäminen (Chrome ja Edge)-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Selainlaajennusten kehittäminen (Chrome ja Edge)-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Selainlaajennusten kehittäminen (Chrome ja Edge)-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.
Kuinka kauan ”Valinnaiset käyttöoikeudet ja ajonaikaiset pyynnöt”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Selainlaajennusten kehittäminen (Chrome ja Edge)-oppitunnilla?
Kyllä. Jokainen Selainlaajennusten kehittäminen (Chrome ja Edge)-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Edistyneiden käyttöoikeuksien ymmärtäminen
- Turvalliset ohjelmointikäytännöt
- Content Security Policy (CSP)
- Valinnaiset käyttöoikeudet ja ajonaikaiset pyynnöt