Cross-Domain Tracking Data Transmission via iFrame Mediation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data transmission methods, such as HTTP GET and HTTP POST, face limitations in sending large tracking data across domains due to size constraints and cross-origin resource sharing (CORS) compatibility issues, affecting the ability of publishers to efficiently track user interactions on web sites.

Innovation Solution

The method involves determining the size of tracking data and using either HTTP GET or HTTP POST requests based on size thresholds, and employing cross-origin resource sharing compliant messages or creating an iFrame to bypass CORS limitations, allowing for efficient data transmission from a client device to an analytics server across different domains.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If HTTP GET request is used to send tracking data, then the implementation is simple, but the data size is limited by the request URL length

Engineering Contradiction:
Improveimplementation simplicityVSAvoidtracking data size
Core Design Contradiction:
Ease of manufactureVSQuantity of substance

Solution Approach 1:

The patent changes the HTTP method parameter from GET to POST, which fundamentally alters the data transmission capacity. POST requests allow data to be sent in the request body rather than the URL, removing the 2048-character URL length limitation and enabling transmission of larger tracking datasets.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If HTTP POST is used to send large tracking data, then the data size limit is overcome, but cross-origin resource sharing (CORS) restrictions prevent sending data from different domains

Engineering Contradiction:
Improvetracking data sizeVSAvoidcross-domain compatibility
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The patent introduces an intermediary iframe element that acts as a bridge between the publisher's domain and the analytics server's domain. The iframe loads content from the analytics server and submits tracking data through its own form, bypassing the browser's same-origin policy restrictions that would otherwise block direct POST requests from cross-domain scripts.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the tracking data transmission process into two independent parts: (1) the publisher's webpage that collects and prepares tracking data, and (2) an iframe-loaded analytics server page that receives and processes the data. This segmentation allows each part to operate within its own domain context, avoiding CORS restrictions.

Inventive Principle:
Principle #1Segmentation

3Quantity of substance

If HTML form POST is used to send tracking data, then large data can be transmitted, but it adds an entry to browser history degrading user experience

Engineering Contradiction:
Improvetracking data sizeVSAvoiduser experience
Core Design Contradiction:
Quantity of substanceVSEase of operation

Solution Approach 1:

The patent replaces the traditional HTML form POST mechanism (which automatically adds entries to browser history) with an AJAX-based POST request. This substitution uses asynchronous JavaScript to send tracking data in the background without triggering browser navigation or history entry creation, thereby maintaining user experience while preserving the ability to send large datasets.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS10284441B2Data delivery
Publication Date: 2019.05.07 GOOGLE LLC
  • US10284441B2 patent drawing
  • US10284441B2 patent drawing
  • US10284441B2 patent drawing

AI summary

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for support dependent post delivery. In one aspect, a method included generating transmission data for a web page served by a first server and rendered on the client device, the first sever belonging to a first domain; determining if the client device supports cross origin resource sharing; in response to a determination that the client device does not support cross origin resource sharing: defining an iFrame for the web page, the iFrame belonging to a second domain of a receiving server, and having a name value derived from the transmission data, receiving iFrame instructions from the receiving server and executing the iFrame instructions in the iFrame, the iFrame instruction causing the client device to: generate an HTTP POST request to the receiving server from the iFrame name value, the first HTTP POST request including the transmission data.