US8959591B2

Follow location handler and selector functionality in a stateless microkernel web server architecture

Summary by NHIP

Follow Location Handler Method

The method serves resources by intercepting links generated after a POST request creates a modified data object. Distinctive elements include embedding content type and resource location identifiers within the object before distributing it to link resource servers that apply specific linking rules.

Claim Score by NHIP

Read claim 7, the broadest

Abstract

A method of serving a resource to a client via a computer network is provided. The method may include providing a follow location handler logically positioned on a WAN side of an HTTP server. At the follow location handler, the method may include receiving a POST request from the client, and forwarding the POST request to the HTTP server. At the HTTP server, the method may include receiving the POST request, creating a modified data object based upon the form data, generating a link to the modified data object, and returning the link. At the follow location handler, the method may include intercepting the link to the modified data object from the server, sending a GET request to the server to retrieve the modified data object, and, in response, receiving the modified data object. The method may further include forwarding the modified data object to the client.

US8959591B2, drawing sheet 1
Sheet 1 of 9

Term

6.2 yearsleft in the term

Expires 4 December 2032, including 64 days of term adjustment.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Expires

12 claims: 2 independent, 10 dependent

  1. 1
    A method of serving a resource to a client via a computer network, the method comprising:providing a follow location handler logically positioned on a WAN side of an HTTP server in a server computing system, the server computing system having a stateless microkernel architecture and including one or more link resource servers, the follow location handler being configured to be executed on a same computing device as the HTTP server, or on a computing device connected via a LAN to the computing device on which the HTTP server is executed;at the follow location handler: receiving a POST request from the client via the computer network, the POST request being to post form data to a resource, wherein the resource is a data object;forwarding the POST request to the HTTP server associated with the resource;at the HTTP server: receiving the POST request and associated form data;creating a modified data object based upon the form data;embedding in the modified data object a content type identifier indicating a content type of the modified data object and a resource location identifier indicating a location of the resource;providing, via a linking engine, the modified data object to each link resource server of the one or more link resource servers;in response, receiving first one or more links from each of the one or more link resource servers, wherein each link resource server includes linking rules for one or more object types, wherein each link resource server is configured to examine the content type of the modified data object, and to return the first one or more links according to the linking rules corresponding to the content type of the data object;embedding the first one or more links in the modified data object;generating a second link to the modified data object;returning the second link to the follow location handler, for forwarding to the requesting client;at the follow location handler: intercepting the second link to the modified data object from the server;refraining from forwarding the second link to the requesting client over the WAN;sending a GET request to the server to retrieve the modified data object via the intercepted second link;in response, receiving the modified data object;and forwarding the modified data object to the client, thereby enabling the client to receive the modified data object in response to the POST request, without downloading the second link across the WAN to the client and causing the client to traverse the link across the WAN.
  2. 7
    Broadest claimClaim Score 20, narrow(NHIP)A server computing system that has a stateless microkernel architecture, comprising:an HTTP server;one or more link resource servers;a follow location handler logically positioned on a WAN side of the HTTP server, the follow location handler being executed on a same computing device as the HTTP server, or on a computing device connected via a LAN to the computing device on which the HTTP server is executed, the follow location handler being configured to: receive a POST request from a client via a computer network, a first resource operation being to post form data to a resource, wherein the resource is a data object;forward the POST request to the HTTP server associated with the resource;wherein the HTTP server is configured to: receive the POST request and associated form data;create a modified data object based upon the form data;embed in the modified data object a content type identifier indicating a content type of the modified data object and a resource location identifier indicating a location of the resource provide, via a linking engine, the modified data object to each link resource server of the one or more link resource servers;in response, receive first one or more links from each of the one or more link resource servers, wherein each link resource server includes linking rules for one or more object types, wherein each link resource server is configured to examine the content type of the modified data object, and to return the first one or more links according to the linking rules corresponding to the content type of the data object;embed the first one or more links in the modified data object;generate a second link to the modified data object;return the second link to the follow location handler, for forwarding to the requesting client;wherein the follow location handler is further configured to: intercept the second link to the resource from the HTTP server;refrain from forwarding the second link to the requesting client over the WAN;send a GET request to the HTTP server to retrieve the modified data object via the intercepted second link;in response, receiving the modified data object;and forwarding the modified data object to the client, thereby enabling the client to receive the modified data object in response to the POST request, without downloading the second link across the WAN to the client and causing the client to traverse the link across the WAN.