In Nuxt3, I am using useFetch
to call this url endpoint:
company = await useFetch(`/api/company/${companyKey}/profile`)
Notice the extra /profile
at the end? How can I organize my /server
directory to cater to a url endpoint of this structure?
For example: if the url had been without the /profile
(i.e. /api/company/${companyKey}
), then the /server
directory would be simple to achieve:
/server/company/[companyKey].get.js
However, with the extra /profile
appended at the end, it becomes more tricky to think about.
How can I handle this scenario? Thank you.
I think they call this a nested dynamic server API routes.
I created an example for you based on your question. Tested and it works. https://stackblitz.com/edit/nuxt-starter-wv9cuk?file=app.vue
Edit
/*
* Folder structure would be
- server
- api - FOLDER
- company - FOLDER
- [company_key] - FOLDER
- profile.get.ts - FILE
* - [company_kuy].get.ts - FILE
*/
You can also use the catch-all-route. See link example https://stackoverflow.com/a/76151522/21341655