Version 5 (modified by 3 months ago) ( diff ) | ,
---|
Финална имплементација на случаи на употреба
Регистриран корисник - Работобарател (Job Seeker)
ИД X - Најава со Google
За ова сценарио, потребно е да вклучиме неколку dependencies поврзани со OAuth2. Исто така треба да креираме проект на Google Cloud Console каде треба да се внесат некои податоци за апликацијата, како и да се вклучат Google+ и Identity Toolkit API-њата. Дополнително, во application.properties фајлот, треба да се постават следните конфигурации, каде client id-то и client secret-от ги добиваме по креирање на проектот, на претходно наведената страна.
За најава со Google акаунт, корисникот тоа го прави со притискање на копчето „Sign in with Google“ каде се отвара прозорец со сите негови сметки.
По одбирање на соодветниот акаунт, се повикува функција која испраќа POST request до backend апликацијата заедно со tokenId.
Во backend апликацијата, request-от е пресретнат од контролер кој што содржи метод со соодветен API endpoint, кој пак го проследува токенот до сервис каде што се наоѓа целата логика.
Методот кој што се повикува од сервисот прво го автентификува корисникот преку неговиот токен со Google Id Token Verifier (достапно во целосниот изворен код), а потоа користејќи ја неговата е-маил адреса, се обидуваме преку repository-то за Job Seeker да го пронајдеме во датабазата. Доколку најдеме корисник со таа е-маил адреса, генерираме JWT и го испраќаме назад, заедно со неговото име, улога и останати работи. Во спротивно, дополнително креираме нов објект од класата Job Seeker, каде ги поставуваме соодветните податоци за корисникот, без лозинка и го зачувуваме корисникот во датабаза преку repository-то. Веднаш потоа се повикува и методот submitGoogleProfilePic кој служи за зачувување на неговата профилна слика.
Имено тука прво правиме објект од тип URL преку string-от, каде преку него ја читаме сликата како Buffered Image. Потоа на сликата се прави конверзија во низа од бајти и така се зачувува како Multipart File. Од тука се повикува стандардниот метод за зачувување на слики во датабазата, истиот кој се користи и при upload на профилни слики на корисниците.
Регистриран корисник - Работодавец (Recruiter)
ИД 7 - Ажурирање на статус на апликација (Е-маил нотификации)
Attachments (10)
- id_7.1_resized.png (54.0 KB ) - added by 3 months ago.
- id_7.2_resized.png (46.5 KB ) - added by 3 months ago.
- id_7.3_resized.png (62.3 KB ) - added by 3 months ago.
- id_7.4_resized.png (24.9 KB ) - added by 3 months ago.
- id_7.5_resized.png (152.5 KB ) - added by 3 months ago.
- id_7.6_resized.png (94.8 KB ) - added by 3 months ago.
- id_x.1_resized.png (105.1 KB ) - added by 3 months ago.
- ID_71_resized.png (218.7 KB ) - added by 3 months ago.
- ID_72_resized.png (91.0 KB ) - added by 3 months ago.
- ID_73.png (22.5 KB ) - added by 3 months ago.
Download all attachments as: .zip