AJAX Web App Bookmarkability via Server-Side URL State Extraction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Asynchronous JavaScript and extensible mark-up language (AJAX) web applications face challenges in making dynamic content bookmarkable and crawlable, as traditional URL methods fail to capture the exact content state, and web crawlers cannot execute JavaScript, hindering the indexing of AJAX web pages.
Innovation Solution
A web application processing server device extracts a second substring from the HTTP request URL when it contains a first reference substring, generating a modified URL that represents the current application content state, allowing generic web crawlers to index the page without executing JavaScript.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the hash part of the URL is changed to capture dynamic content state, then bookmarkability is improved, but web crawler accessibility deteriorates since crawlers cannot execute JavaScript
Solution Approach 1:
The patent introduces a server-side intermediary that acts as a mediator between the AJAX application and web crawlers. The server extracts state information from the URL and generates a static HTML page with embedded data that crawlers can access without executing JavaScript. This intermediary layer translates dynamic AJAX states into static crawler-friendly content.
Solution Approach 2:
The patent creates a copy of the dynamic content state that is accessible to crawlers. By generating a static HTML page that replicates the current content state with embedded data, the system provides crawlers with a copy of the dynamic page that doesn't require JavaScript execution, thus enabling indexing while preserving the dynamic nature of the original application.
2Ease of operation
If traditional URL methods are used for AJAX applications, then web crawler indexing is maintained, but content state capture capability deteriorates
Solution Approach 1:
The patent segments the URL into different components: a base URL that remains static for crawler indexing, and a state information section that captures the dynamic content state. By separating these functions, the system maintains crawler accessibility through the base URL while capturing complete content state information through the appended state data.
Solution Approach 2:
The server performs preliminary action by extracting state information from the URL before generating the response. This preliminary extraction and embedding of state data into the HTML page ensures that content state is captured and preserved before the crawler processes the page, maintaining both indexing capability and state information.
3Productivity
If AJAX technology is used to manipulate web page content, then user responsiveness is improved, but bookmarkability of dynamic content deteriorates
Solution Approach 1:
The patent applies dynamics by allowing the URL to dynamically encode different content states while maintaining a stable base structure. The system generates URLs that adapt to reflect the current state of the AJAX application, enabling bookmarks to point to specific dynamic states rather than just the base page, thus preserving both responsiveness and bookmarkability.
Data Source
Figure 1
Figure 2
AI summary
Methods, devices, and computer-readable storage media that make an asynchronous JavaScript and extensible mark-up language (AJAX) application content state bookmarkable and crawlable include receiving a HyperText Transfer Protocol (HTTP) request is received. The HTTP request includes an HTTP request uniform resource locator (URL) representing a current application state. When the HTTP request URL contains a first reference substring, a second substring is extracted from the HTTP request URL based upon the first reference substring. A modified URL is generated based at least in part on the extracted second substring. The modified URL represents the current application content state.