apache / apache/openwhisk-apigateway

Expose base path to the action

Open
#311 2 comments 0 reactions 0 assignees View on GitHub
enhancement good first issue
Dominant language
Lua
Stars
65
Forks
43
PR merge metrics
No merged PRs in 30d

Description

I'm trying to find a way to determine the fully qualified base URL that was used for my action so that I can create URLs in my payloads to other resources in my API.

e.g. if you set up as per https://github.com/apache/incubator-openwhisk/blob/master/docs/apigateway.md#exposing-multiple-web-actions then:
* Given a POST /club/books, I need to generate a URL to /club/books/{new id}
* Given a GET to /club/books/12, then I want to generate a URL to /club/books/34 which is by the same author.

As it stands, we have:

* `__ow_headers` => `x-forwarded-url` which provides the fully qualified URL that was used to invoke this action
* `__ow_path` which is some characters from the end of the `x-forwarded-url` URL.

My initial idea was to subtract `__ow_path` from `__ow_headers`, but it doesn't work as `__ow_path` is very different depending on if there's a placeholder in the path:

i.e. if you call the URL for `/club/books/`, then `__ow_path` is `/`, but if you call the URL for `/club/books/12` the `__ow_path` is `/club/books/12`

*Suggested solution:*

Provide `__ow_base_path` which is equal to `/club` in this example.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.