SWFAddress

Last updated
SWFAddress
Asual-swfaddress.jpg
Developer(s) Rostislav Hristov from Asual, Matthew Tretter, Max Tafelmayer, Piotr Zema
Initial releaseNovember 2006
Stable release
2.4 / October 7, 2009;12 years ago (2009-10-07)
Repository
Written in JavaScript
Platform Web browser
Size 16 KB (output JS file)
Available in English
Type JavaScript library
License MIT License
Website www.asual.com/swfaddress/

SWFAddress is an open-source JavaScript library that enables Adobe Flash/Flex and JavaScript/AJAX websites and web applications to support deep linking, a practice that enables users to link to a specific section or page of the content. [1]

Its importance is because such Rich Internet Application platforms provide only a single URL to access the specific content, and any user navigation within the content cannot be uniquely identified, or shared by means of the URL.

When the developer of the content integrates with SWFAddress, users are able to use standard browser navigation functionality, share and bookmark unique URLs that represent the currently displayed section or state of the content. [2]

The library is commonly used on Flash websites and web applications being the only available deep linking JavaScript library for Flash on the web.[ citation needed ] SWFAddress has been found to be used by over 100,000 websites as of 2011. [3]

Functionality

SWFAddress uses the "hash" portion of the URL to interact with web browsers and simulate page navigation, and works in two ways:

  1. When the user navigates within the content, it simulates a page navigation so browsers display the appropriate URL and page Title.
  2. When the URL changes in the browser, either by users pressing Back/Forward or typing a specific deep link URL, it informs the content to navigate appropriately.

The library is built to integrate with the free Google Analytics web analytics system in order to record page view statistics and track popularity of individual pages, as the viewer navigates through the virtual pages or states of the content. [4] [5] It also integrates with the popular SWFObject JavaScript library to automatically enable deep linking on content loaded with the same. [6] [7]

SWFAddress works with all major web browsers on all major operating systems. It can be integrated with Flash content written in the outdated ActionScript 1, the recent ActionScript 2, or the latest ActionScript 3. [8] [9]

See also

Related Research Articles

Adobe Flash is a multimedia software platform used for production of animations, rich web applications, desktop applications, mobile apps, mobile games, and embedded web browser video players. Flash displays text, vector graphics, and raster graphics to provide animations, video games, and applications. It allows streaming of audio and video, and can capture mouse, keyboard, microphone, and camera input.

In the context of the World Wide Web, deep linking is the use of a hyperlink that links to a specific, generally searchable or indexed, piece of web content on a website, rather than the website's home page. The URL contains all the information needed to point to a particular item. Deep linking is different from mobile deep linking, which refers to directly linking to in-app content using a non-HTTP URI.

Cross-site scripting Computer security vulnerability

Cross-site scripting (XSS) is a type of security vulnerability that can be found in some web applications. XSS attacks enable attackers to inject client-side scripts into web pages viewed by other users. A cross-site scripting vulnerability may be used by attackers to bypass access controls such as the same-origin policy. Cross-site scripting carried out on websites accounted for roughly 84% of all security vulnerabilities documented by Symantec up until 2007. XSS effects vary in range from petty nuisance to significant security risk, depending on the sensitivity of the data handled by the vulnerable site and the nature of any security mitigation implemented by the site's owner network.

Adobe ColdFusion is a commercial rapid web-application development computing platform created by J. J. Allaire in 1995. ColdFusion was originally designed to make it easier to connect simple HTML pages to a database. By version 2 (1996), it became a full platform that included an IDE in addition to a full scripting language.

A rich web application is a web application that has many of the characteristics of desktop application software. The concept is closely related to a single-page application, and may allow the user interactive features such as drag and drop, background menu, WYSIWYG editing, etc. The concept was first introduced in 2002 by Macromedia to describe Macromedia Flash MX product. Throughout the 2000-s, the term was generalized to describe web applications developed with other competing browser plugin technologies including Java applets, Microsoft Silverlight.

Netscape Plugin Application Programming Interface (NPAPI) is an application programming interface (API) of the Web Browsers that allows plugins to be integrated.

Dynamic web page Type of web page

A server-side dynamic web page is a web page whose construction is controlled by an application server processing server-side scripts. In server-side scripting, parameters determine how the assembly of every new web page proceeds, including the setting up of more client-side processing.

Adobe Flash Player is computer software for content created on the Adobe Flash platform. Flash Player is capable of viewing multimedia contents, executing rich Internet applications, and streaming audio and video. In addition, Flash Player can run from a web browser as a browser plug-in or on supported mobile devices. Originally created by FutureWave under the name FutureSplash Player, it was renamed to Flash Player after Macromedia acquired FutureWave in 1996. It was then developed and distributed by Adobe Systems after Adobe acquired Macromedia in 2005. Currently, it's developed and distributed by Zhongcheng for users in China, and by Harman International for enterprise users outside of China, in collaboration with Adobe. Flash Player is distributed as freeware. With the exception of the China-specific and enterprise supported variants, Flash Player was discontinued on 31 December 2020, and its download page disappeared two days later. Since 12 January 2021, Flash Player versions newer than 32.0.0.371, released in May 2020, refuse to play Flash content and instead display a static warning message.

Adobe Flash Lite

Adobe Flash Lite was a lightweight version of Adobe Flash Player, a software application published by Adobe Systems for viewing Flash content. Flash Lite operates on devices that Flash Player cannot, such as mobile phones and other portable electronic devices like Wii, Chumby and Iriver.

Internet Channel Internet browser made for the Nintendo Wii

The Internet Channel is a version of the Opera 9 web browser for use on the Wii by Opera Software and Nintendo. Opera Software also implemented the Nintendo DS Browser for Nintendo's handheld system.

Adobe AIR Cross-platform runtime system for building rich web applications

Adobe AIR is a cross-platform runtime system currently developed by Harman International, in collaboration with Adobe Inc., for building desktop applications and mobile applications, programmed using Adobe Animate, ActionScript, and optionally Apache Flex. It was originally released in 2008. The runtime supports installable applications on Windows, macOS, and mobile operating systems, including Android, iOS, and BlackBerry Tablet OS.

Firebug (software) Web development add-on for Firefox

Firebug is a discontinued free and open-source web browser extension for Mozilla Firefox that facilitated the live debugging, editing, and monitoring of any website's CSS, HTML, DOM, XHR, and JavaScript. It is now inbuilt in Firefox.

ItsNat Natural AJAX, is an open-source Java component-based Ajax framework.

JSONP, or JSON-P, is a historical JavaScript technique for requesting data by loading a <script> element, which is an element intended to load ordinary JavaScript. It was proposed by Bob Ippolito in 2005. JSONP enables sharing of data bypassing same-origin policy, which disallows running JavaScript code to read media DOM elements or XMLHttpRequest data fetched from outside the page's originating site. The originating site is indicated by a combination of URI scheme, host name, and port number.

A single-page application (SPA) is a web application or website that interacts with the user by dynamically rewriting the current web page with new data from the web server, instead of the default method of a web browser loading entire new pages. The goal is faster transitions that make the website feel more like a native app.

SWFObject is an open-source JavaScript library used to embed Adobe Flash content onto Web pages and to protect the flash game against piracy, which is supplied as one small JavaScript file. The library can also detect the installed Adobe Flash Player plug-in in all major web browsers, on all major operating systems (OS), and can redirect the visitor to another webpage or show alternate HTML content if the installed plug-in is not suitable.

Modern HTML5 has feature-parity with Adobe Flash. Both include features for playing audio and video within web pages. Flash is specifically built to integrate vector graphics and light games in a web page, features that HTML5 also supports.

HtmlUnit is a headless web browser written in Java. It allows high-level manipulation of websites from other Java code, including filling and submitting forms and clicking hyperlinks. It also provides access to the structure and the details within received web pages. HtmlUnit emulates parts of browser behaviour including the lower-level aspects of TCP/IP and HTTP. A sequence such as getPage(url), getLinkWith("Click here"), click allows a user to navigate through hypertext and obtain web pages that include HTML, JavaScript, Ajax and cookies. This headless browser can deal with HTTPS security, basic HTTP authentication, automatic page redirection and other HTTP headers. It allows Java test code to examine returned pages either as text, an XML DOM, or as collections of forms, tables, and links.

References