openwhisk-apigateway
openwhisk-apigateway copied to clipboard
Api v2 management allows swagger config to have basepath and path both set to /
When creating a new api, a swagger is sent to api management with both base path and operation path set to /
the API doesn't error out.
To reproduce you should could use the WSK CLI
wsk api create / / get myaction
wsk api list -f
Action: /guest/myaction
API Name: /
Base path: /
Path: /
Verb: get
URL: https://service.eu.apiconnect.ibmcloud.com/gws/apigateway/api/123/
api management doesn't return error to know that there is an invalid combination to have both base path and operation path set to /
If an API happens to be created with a basepath and path of /
each, subsequent APIs created after this "/" API can be affected -> successful API creation followed by API invocation results in a 404 status code
FWiW, I would like this to work. I can't remember the last time I created an API that didn't have a root endpoint.
@akrabat but would you really want an API that has a root endpoint and basically no base path?
To be honest I have no idea what the base path is and how it differs from the api path.
I do want to be able to do curl https://my-cnamed-domain.com/
and get back a response. I expect that this API needs to be in it's own namespace for this to work though.
I can see how a URL like "https://my-cnamed-domain.com/" invokes a web action like "public/index" that receive a __ow-path with "/" returns the html content for a website
I can see how a URL like "https://my-cnamed-domain.com/" invokes a web action like "public/index" that receive a __ow-path with "/" returns the html content for a website
Yes. For APIs, I was thinking along the lines of the Home Documents for HTTP APIs proposal.
When it comes to the typical REST API, I don't know how often this scenario occurs. The HTML use case is the most compelling, given that you typically want a home document.
Obviously, this is a use case for Whisk itself, but is it one for the API gateway? Would someone typically front an HTML page with the gateway?