Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Adam Gajdečka:17.2.2019 9:43

Mám aplikaci, kde mám 2 role. Konkrétně pacienty a doktory. Každý uživatel, který je pouze v jedné roli, má svůj vlastní profil.

Pacient si může upravit svůj profil, zobrazit, ale také si může zobrazit profil doktora.
Doktor to samé.

Jak má vypadat REST API?

  • /api/patient/pro­file

    GET: data na zobrazení profilu

  • /api/patient/edit-profile

    GET: data na úpravu profilu

    PUT: úprava profilu

Stejně tak u doktora.

Rozhodl jsem se psát oddělené api pro doktora a pro pacienta. Tudíž pacient má vždy /api/patient a doktor /api/doctor

Problém nastává, kdy doktor si chce načíst data pacienta.

/api/doctor/pa­tient/profile?u­serId=xxx

takto?

Už jsem načetl mnoho článků, ale toto jsem tam nenašel. Chci se ujistit, že nedělám nějakou kravinu. Díky

Backend: Asp Core 2.x
Frontend: React JS

Editováno 17.2.2019 9:44
 
Odpovědět
17.2.2019 9:43
Avatar
JerryM
Člen
Avatar
JerryM:18.2.2019 8:42

a proč tam pořád cpeš REST api ??? tak to dělej bez něj ne .. jesdoduše vytvoř strukturu pro SQL tabulku v Microsoft Management Studiu a jednotlivé řádky pak zobrazuj přes MS VS 2017 ASP .NET Core 2.1 C# ...

 
Nahoru Odpovědět
18.2.2019 8:42
Avatar
Odpovídá na JerryM
Adam Gajdečka:18.2.2019 9:46

upřímně toto jsem vůbec nepochopil. Já se ptám na návrh API. Frondend mám v React JS

 
Nahoru Odpovědět
18.2.2019 9:46
Avatar
Adam Gajdečka:18.2.2019 20:59

Tak jsem dostal odpověď na stackoverflow.com, myslím, že krásně odpověděla na můj dotaz.

This question is subjective since there's not one "correct" way to do it, and everyone will have differing opinions. But, there are best practices to follow, and based on the info given, here's how I would approach the URI design for your API.

Patient

/api/patients/{id}
/api/patients/{id}/pro­files
Doctor

/api/doctors/{id}
/api/doctors/{id}/pro­files
/api/doctors/{id}/pa­tients
/api/doctors/{id}/pa­tients/{patien­tid}/profiles
The authorization for accessing these resources should be handled by OAuth 2.0 + OpenID, using claims and scopes.

Here's a link to some URI best practices - https://blog.restcase.com/…-uri-design/

Akceptované řešení
+5 Zkušeností
Řešení problému
 
Nahoru Odpovědět
18.2.2019 20:59
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.