sampy2518 commented on issue #820:
URL: 
https://github.com/apache/apisix-dashboard/issues/820#issuecomment-1910775883

   I have a peculiar situation in my project where I am trying to replace my 
existing old Proxy code with APISIX. my current proxy backtrack the versions 
apis and services in a different way. for example. 
   API Versions available : V1, V2, V3
   
   Routes should be created in below format 
   V1
        API1 
                Service1
                Service2 
        API2
                Service3
                Service4
        API3
                Service5
   
   V2
        API2
                Service4
        API4 
                Service6
   V3
        API2
                Service4
        API5 
                Service7
   
   API routing, fallback and backtracking rules to follow 
   case 1:      
   APP A : current Version used V2. All any API from the frontend will be 
called with V2
   
   Invoke V2/API1/Service1/ will be redirected to V1/API1/Service1, As it is 
not present in current version V2, so it will backtrack or fallback to previous 
version which is V1 and search for the Service1 in API1.
   
   Invoke V2/API1/Service2/ will be redirected to V1/API1/Service2, As it is 
not present in current version V2, so it will backtrack or fallback to previous 
version which is V1 and search for the Service2 in API1.
   
   Invoke V2/API2/Service3/ will be redirected to V1/API2/Service3, As it is 
not present in current version V2, so it will backtrack or fallback to previous 
version which is V1 and search for the Service3 in API2.
   
   Invoke V2/API2/Service4/ will be redirected to V2/API2/Service4, As it is 
present in V2
    
   Invoke V2/API3/Service5/ will be redirected to V1/API3/Service5, As it is 
not present in current version V2, so it will backtrack or fallback to previous 
version which is V1 and search for the Service5 in API3.
   
   Invoke V2/API4/Service6/  will be redirected to V2/API4/Service6, As it is 
present in V2
   
   case 2:      
   APP b : current Version used V3. All any API from the frontend will be 
called with V3
   
   Invoke V3/API1/Service1/ will be redirected to V1/API1/Service1, As it is 
not present in current version V3, so it will backtrack or fallback to previous 
version which is V1 and search for the Service1 in API1.
   
   Invoke V3/API1/Service2/ will be redirected to V1/API1/Service2, As it is 
not present in current version V3, so it will backtrack or fallback to previous 
version which is V1 and search for the Service2 in API1.
   
   Invoke V3/API2/Service3/ will be redirected to V1/API2/Service3, As it is 
not present in current version V3, so it will backtrack or fallback to previous 
version which is V1 and search for the Service3 in API2.
   
   Invoke V3/API2/Service4/ will be redirected to V3/API2/Service4, As it is 
present in V3
    
   Invoke V3/API3/Service5/ will be redirected to V1/API3/Service5, As it is 
not present in current version V3, so it will backtrack or fallback to previous 
version which is V1 and search for the Service5 in API3.
   
   Invoke V3/API4/Service6/ will be redirected to V2/API4/Service6, As it is 
not present in current version V3, so it will backtrack or fallback to previous 
version which is V2 and search for the Service6 in API4.
   
   Invoke V3/API4/Service7/ will be redirected to V3/API5/Service7, As it is 
present in V3
   
   I would like to ask how can i define a customer global plugin which is work 
when for any incoming request from client and rewrite the URL as per above 
rule. 
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to