-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
User have to create totally unique proxy base path #2093
Comments
We are not committing to resolve this issue right away, but want to get a better understanding of the underlying parts. I have self-assigned and will look for upstream issues or discussions that might give us better understanding. |
This seems related to the API Umbrella internal matching order field: The matching order field tells API Umbrella in which order to route requests. API Backends with lower matching order value will be routed before higher level routes, when their frontend prefix matches, even when a higher matching order route might have a more accurate frontend prefix. The reason for a matching order may be so the proxy does not have to parse the entire route prefix map each time it resolves a request. |
In the spirit of this issue title, we might consider 'solving' this challenge by allowing multiple, explicit frontent prefixes per Proxy Backend. This aligns with the design of API Umbrella: Then we can change our code to not use wildcard queries for getting/deleting analytics data, rather relying on the explicit frontend prefix. |
Caveat emptor: this would require that API managers explicitly define every desired frontend prefix, rather than allowing for the 'catch all' prefixing that API Umbrella allows. Currently, we require a new Proxy Backend to be created per frontend prefix. |
Opened an upstream support request: NREL/api-umbrella#342 |
@brylie We would need to unblock this issue. Can you get some advice from our developers? |
This is becoming even more urgent because of monetization and new dashboard. Let's resolve this during sprint 51. |
@brylie Please invite @matleppa, @marla-singer and @phanimahesh for a meeting to discuss both proxies and our domain model. Should happen 25 - 29 September |
Invite sent for next Tuesday (2017-09-26). |
Notes from our meeting with @bajiat, @matleppa, @Nazarah, and @phanimahesh: Consistency across featuresWen resolving this issue, we want to be consistent across the followint APInf features:
Wireframes neededWireframes will be needed for at least:
User flowsHypothetical user flow for adding an API
Hypothetical user flow for adding Proxy Backend
Desired flexibilityThings we would like to allow:
|
I have summarized our discussion in the above comment, and will need to hand this task off to another champion. |
Now we have the rule that user must create the unique proxy base path. But we need to limit it more. Don't let user create the proxy base path if the first section of this path has is the part of other API
On local, I have three different APIs with the next settings. Bring to your notice that APIs have the different URL.
Found &expected
https://nightly.apinf.io:3002/alternative/
it redirects to
https://music.yandex.ru/genre/alternative/
that's correcthttps://nightly.apinf.io:3002/alternative/artists/
it redirects to
https://music.yandex.ru/genre/alternative/artists/
that's wrong.Expected:
http://petstore.swagger.io/test-elastic/
https://nightly.apinf.io:3002/alternative/rock/
it redirects to
https://music.yandex.ru/genre/alternative/rock/
that's wrong.Expected:
https://learn.javascript.ru/courses/nodejs
The text was updated successfully, but these errors were encountered: