Web Services Gateway Dynamic Path Matching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing access to resources in a web services system is challenging due to dynamic API paths and the need to match incoming HTTP requests to canonical API paths, leading to time delays and inefficiencies, especially when service providers are in private networks and requestors are in public networks.

Innovation Solution

A gateway system that identifies the method type and path component count of a uniform resource identifier, successively matches path components to corresponding character sequences, and generates context resource identifiers for efficient routing of requests, decoupling from dynamic changes in API paths and ensuring authorization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If canonical API paths include dynamic path components to enable flexible resource referencing, then adaptability is improved, but path matching complexity increases

Engineering Contradiction:
Improveflexible resource referencingVSAvoidpath matching complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The gateway segments the uniform resource identifier into multiple path components and processes them sequentially. Each path component is matched against corresponding character sequences in the canonical API path, breaking down the complex matching problem into manageable discrete steps that reduce overall matching complexity while preserving adaptability to dynamic paths.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the parameter representation from complete path strings to individual path components and character sequences. By transforming the matching problem into comparing discrete parameter elements rather than entire paths, the system reduces matching complexity while maintaining the ability to handle dynamic path components through flexible sequence matching.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If traditional path matching methods are used to match incoming HTTP requests to canonical API paths, then authorization can be enforced, but time delays increase

Engineering Contradiction:
Improveauthorization enforcementVSAvoidservice access time delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The gateway performs preliminary actions by pre-processing and storing canonical API paths as character sequences with defined patterns before request arrival. When a request comes in, the matching process leverages these pre-prepared sequences, enabling faster authorization checks without sacrificing enforcement reliability, as the heavy lifting of path analysis is done in advance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates simplified copies of the canonical API paths in the form of character sequences that capture the essential matching patterns without the full complexity of the original paths. These copied representations enable rapid comparison and matching operations while maintaining authorization enforcement, as the critical path structure is preserved in the simplified form.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10764399B2Customized web services gateway
Publication Date: 2020.09.01 ADP INC
  • US10764399B2 patent drawing
  • US10764399B2 patent drawing
  • US10764399B2 patent drawing

AI summary

A method and apparatus for facilitating access to a resource. A gateway receives a request from a client. The request includes a uniform resource identifier that references an interface associated with the resource. The gateway identifies a method type of the request and a path component count of path components in the uniform resource identifier. The gateway successively matches path components of the uniform resource identifier to a corresponding character sequence in a set of candidate sequences. The set of candidate sequences is identified based on the method type, the path component count, and any previously matched corresponding character sequences. The gateway identifies a context resource identifiers for the resource based on the method type, the path component count, and the matched corresponding character sequences. The gateway sends the request to the resource according to the context resource identifiers.