• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

TykTechnologies / tyk / 5317
60%
master: %

Build:
Build:
LAST BUILD BRANCH: v2.9.4.8
DEFAULT BRANCH: master
Ran 06 Aug 2018 12:40PM UTC
Jobs 2
Files 102
Run time 18s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
5317

push

travis-ci

buger
Add Looping support

Looping means calling itself without additional http request. So you
can do an advanced URL rewrite, and for example redirect it to another
endpoint, by using URL of the following scheme: `tyk://self/path`.

As url you can read it as: `tyk` scheme, `self` domain, and `/path` is
a path. You can also provide `?method`  argument to specify HTTP method
name, like GET or POST.

Additionally added looping support for VirtualEndpoints. To do so you
just need to return HTTP redirect in response: 30X redirect, with
Location header containing loop HTTP scheme. Using this technique you
can turn VirtualEndpoint into advanced URL rewriter with any logic you
want. The same idea, will be implement for rest of the plugins as well.

Regarding flow itself, during looping request retains all its metadata,
query params, form values and etc.

You can chain loops, and turn Tyk into a state machine. Worth noticing
that it has protection over too deep stack, and limited by 5 loops in
the same request.

## Example

The easiest example to follow will be SOAP usage: you receive payloads
to the single endpoint, but you want to apply specific transforms,
like: different upstreams for different endpoints, or converting XML to
JSON, and forwarding to the REST endpoint, and etc.

On this general SOAP processing endpoint you define advanced URL
rewrite which, based on body content, loops user to another Tyk
endpoint, for example: if body match `action=“getPrices”`, redirect to
`tyk://self/get_prices`.

After you define internal endpoints, for example `get_prices`, and add
endpoint specific plugins there.

9410 of 15643 relevant lines covered (60.15%)

1.33 hits per line

Jobs
ID Job ID Ran Files Coverage
1 5317.1 (LATEST_GO=true) 06 Aug 2018 12:40PM UTC 0
59.53
Travis Job 5317.1
2 5317.2 (LATEST_GO=true) 06 Aug 2018 12:40PM UTC 0
60.15
Travis Job 5317.2
Source Files on build 5317
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #5317
  • f111fd13 on github
  • Next Build on looping (#5413)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc