Web browser: Difference between revisions

Content deleted Content added
Function: Add discussion of browser rendering engines and JavaScript engines
m Function: Added link to web multimedia and images
Line 23:
[[File:Web browser demo.webm|thumb|Navigating to [[English Wikipedia]] using a web browser ([[Firefox]])]]
 
The purpose of a web browser is to fetch content and display it on the user's device.<ref>{{Cite web|url=https://www.reference.com/humanities-culture/purpose-browser-e61874e41999ede|title=What Is the Purpose of a Web Browser?|date=4 August 2015}}</ref> This process begins when the user inputs a [[Uniform Resource Locator]] (URL), such as ''<code><nowiki>https://en.wikipedia.org/</nowiki></code>'', into the browser's [[address bar]]. Virtually all URLs on [[World Wide Web|the Web]] start with either ''<code>http:</code>'' or ''<code>https:</code>'' which means they are retrieved with the [[HTTP|Hypertext Transfer Protocol]] (HTTP). For [[HTTPS|secure mode]] (HTTPS), the connection between the browser and [[web server]] is [[encryption|encrypted]], providing a [[communications security|secure]] and [[information privacy|private]] data transfer.<ref>{{Cite web |url=https://www.techtarget.com/whatis/definition/HTTP-Hypertext-Transfer-Protocol|title=What is HTTP and how does it work? Hypertext Transfer Protocol Definition|website=WhatIs.com}}</ref> For this reason, a web browser is often referred to as an HTTP client<ref>{{Cite web |last=Steelman |first=Liz |date=2024-07-28 |title=What Is a Web Browser? Web Browser Definition |url=https://www.wix.com/encyclopedia/definition/web-browser |access-date=2025-03-21 |website=wix-encyclopedia |language=en}}</ref><ref>{{Cite web |title=HTTP |url=https://paws.wcu.edu/holliday/cware/Web/HTTP.html |access-date=2025-03-21 |website=paws.wcu.edu}}</ref> or a [[user agent]]. Requisite materials, (including contenttext, [[Style sheet (web development)|style sheets]], [[images]], and others)other types of [[Website#Multimedia_and_interactive_content|multimedia]], are [[downloaded]] from the server. Once the materials have been downloaded, the web browser's [[Browser engine|engine]] (also known as a layout engine or rendering engine) is responsible for converting those resources into an interactive visual representation of the page on the user's device.<ref name=behindscene>{{cite web|url=http://taligarsiel.com/Projects/howbrowserswork1.htm|title=Behind the scenes of modern web browsers|publisher=Tali Garsiel|access-date=21 April 2018}}</ref> Modern web browsers also contain separate [[JavaScript engine|JavaScript engines]] which enable more complex interactive applications inside the browser.<ref name="howBlinkWorks">{{cite web |title=How Blink Works |url=https://docs.google.com/document/d/1aitSOucL0VHZa9Z2vbRJSyAIsAz24kX8LFByQ5xQnUg |access-date=12 March 2024}}</ref> A web browser that does not render a [[graphical user interface]] is known as a [[headless browser]].
 
Web pages usually contain [[hyperlink]]s to other pages and resources. Each link contains a URL, and when it is [[point and click|clicked]] or [[touchscreen|tapped]], the browser navigates to the new resource. Most browsers use an internal [[web cache|cache]] of web page resources to improve loading times for subsequent visits to the same page. The cache can store many items, such as large images, so they do not need to be downloaded from the server again. Cached items are usually only stored for as long as the web server stipulates in its HTTP response messages.<ref>{{Cite book |last1=Nguyen |first1=Hoai Viet |last2=Lo Iacono |first2=Luigi |last3=Federrath |first3=Hannes |chapter=Systematic Analysis of Web Browser Caches |date=2018-10-03 |title=Proceedings of the 2nd International Conference on Web Studies |chapter-url=https://doi.org/10.1145/3240431.3240443 |series=WS.2 2018 |___location=New York, NY, USA |publisher=Association for Computing Machinery |pages=64–71 |doi=10.1145/3240431.3240443 |isbn=978-1-4503-6438-6}}</ref><ref>{{Cite journal |last1=Mishra |first1=Vikas |last2=Laperdrix |first2=Pierre |last3=Rudametkin |first3=Walter |last4=Rouvoy |first4=Romain |date=2021-04-01 |title=Déjà vu: Abusing Browser Cache Headers to Identify and Track Online Users |url=https://petsymposium.org/popets/2021/popets-2021-0033.php |journal=Proceedings on Privacy Enhancing Technologies |language=en |volume=2021 |issue=2 |pages=391–406 |doi=10.2478/popets-2021-0033 |issn=2299-0984|hdl=20.500.12210/57495 |hdl-access=free }}</ref>