Changes between Version 2 and Version 3 of UseCaseImplementationsFinal
- Timestamp:
- 08/31/24 01:30:16 (4 weeks ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
UseCaseImplementationsFinal
v2 v3 5 5 === ИД X - Најава со Google 6 6 7 **За најава со Google акаунт, корисникот тоа го прави со притискање на копчето „Sign in with Google“ каде се отвара прозорец со сите негови сметки.** 8 7 9 [[Image(id_7.1_resized.png)]] 10 11 **По одбирање на соодветниот акаунт, се повикува функција која испраќа POST request до backend апликацијата заедно со tokenId.** 8 12 9 13 [[Image(id_7.2_resized.png)]] … … 11 15 [[Image(id_7.3_resized.png)]] 12 16 17 **Во backend апликацијата, request-от е пресретнат од контролер кој што содржи метод со соодветен API endpoint, кој пак го проследува токенот до сервис каде што се наоѓа целата логика.** 18 13 19 [[Image(id_7.4_resized.png)]] 14 20 21 **Методот кој што се повикува од сервисот прво го автентификува корисникот преку неговиот токен со Google Id Token Verifier (достапно во целосниот изворен код), а потоа користејќи ја неговата е-маил адреса, се обидуваме преку repository-то за Job Seeker да го пронајдеме во датабазата. Доколку најдеме корисник со таа е-маил адреса, генерираме JWT и го испраќаме назад, заедно со неговото име, улога и останати работи. Во спротивно, дополнително креираме нов објект од класата Job Seeker, каде ги поставуваме соодветните податоци за корисникот, без лозинка и го зачувуваме корисникот во датабаза преку repository-то. Веднаш потоа се повикува и методот submitGoogleProfilePic кој служи за зачувување на неговата профилна слика.** 22 15 23 [[Image(id_7.5_resized.png)]] 24 25 **Имено тука прво правиме објект од тип URL преку string-от, каде преку него ја читаме сликата како Buffered Image. Потоа на сликата се прави конверзија во низа од бајти и така се зачувува како Multipart File. Од тука се повикува стандардниот метод за зачувување на слики во датабазата, истиот кој се користи и при upload на профилни слики на корисниците.** 16 26 17 27 [[Image(id_7.6_resized.png)]]