Dit bericht maakt deel uit van mijn Vandaag heb ik geleerd serie waarin ik al mijn lessen op het gebied van webontwikkeling deel.
Een PR op de MDN-compatibiliteitsgegevensopslagplaats viel mij vandaag op. Het doel van het pull-verzoek was om de ping
attribuutondersteuning voor Safari. Ik heb dit attribuut nog nooit gezien โ laten we eens kijken!
Het ankerelement ping
attribuut accepteert een door spaties gescheiden lijst met URL's. Wanneer een anker ping-URL's definieert en iemand erop klikt, verzendt de browser een POST
verzoek naar deze opgegeven URL's. Deze functionaliteit kan handig zijn als u wilt bijhouden en analyseren hoe gebruikers omgaan met uw site.
<a href="https://www.stefanjudis.com/popular-posts/" ping="https://www.stefanjudis.com/tracking/">Read popular posts</a>
Om het in actie te zien, opent u uw ontwikkelaarstools en klikt u op de onderstaande link.๐
En inderdaad, wanneer u het netwerkpaneel opent in de ontwikkelaarstools (schakel โpreserve logโ in om het verzoek te zien nadat de browser naar een nieuwe URL is genavigeerd), ziet u een verzoek naar de gedefinieerde URL vliegen nadat u op de โping-linkโ hebt geklikt.
De payload van het POST-verzoek bestaat uit รฉรฉn woord PING
. De ping-to
request header bevat de bestemming van de link en aanvullende informatie zoals user-agent
is ook beschikbaar. Het is fascinerend dat de content-type
is text/ping
. ๐
Samenvattend, de ping
attribuut biedt een lichtgewicht manier om โlink click trackingโ te implementeren. Betekent dit dat u het vandaag nog kunt gebruiken?
De browserondersteuning van de ping
attribuut
Wanneer je kijkt de browsercompatibiliteitstabel van het kenmerk op MDN, zie je dat browserondersteuning zo slecht niet is.
Chromium-browsers (Chrome, Edge, enz.) ondersteunen dit. De ondersteuning van Firefox zit achter een browserfunctievlag (browser.send_pings
) en Safariโฆ Safari wordt ten onrechte bestempeld als niet ondersteunend.
Deze onjuiste informatie is waar het genoemde pull-verzoek waarbij de Safari-ondersteuningsinformatie wordt bijgewerkt komt in het spel. De tabel zal redelijk groen zijn bij de volgende release van de MDN-compatibiliteitsgegevens!
Ik ben een grote fan van native HTML-oplossingen. De vraag is waarom niemand het gebruikt ping
attribuut (of kent u een site die dit gebruikt?)?
Ik kan hier alleen maar speculeren, maar een reden zou kunnen zijn dat gebruikersanalyses voornamelijk worden aangestuurd door externe providers zoals Google Analytics.
Om deze als webontwikkelaar te gebruiken, hoeft u alleen maar รฉรฉn script in uw site in te sluiten. JavaScript houdt al het gebruikersgedrag bij en er hoeft geen infrastructuur te worden opgezet. Het werkt gewoon.
Als u uw tracking baseert op de ping
attribuut, dan moet u alle links op uw site aanpassen. Dit proces omvat meer onderhouds- en ontwikkelingswerk. Dat is een sterk argument tegen het gebruik van de ping
attribuut.
Toch is het goed om te weten dat het bestaat. Als je gebruikt ping
, ik zou graag meer willen weten over wat je ermee doet!
- Actie
- Extra
- analytics
- browser
- gevangen
- Chrome
- gegevens
- Ontwikkelaar
- Ontwikkeling
- gedreven
- rand
- etc
- oog
- Kenmerk
- Firefox
- goed
- Kopen Google Reviews
- Google Analytics
- Groen
- hier
- Hoe
- HTTPS
- ICON
- Inclusief
- informatie
- Infrastructuur
- IT
- JavaScript
- LEARN
- LINK
- Lijst
- liefde
- mozilla
- netwerk
- Aanbod
- open
- Populair
- pr
- Safari
- -Series
- reeks
- Delen
- So
- Oplossingen
- ondersteuning
- teken
- spoor
- Tracking
- bijwerken
- gebruikers
- web
- Mijn werk
- Bedrijven