tbh not the best course, a lot of things he is just reading from the docs and a person who is trying to learn cannot understand a shit from docs, they need much more simplified explanation. A lot about frond-end is VERY bad made he basically says "repeat after me" without explanation. You will still google A LOT just to understand things from this course cuz his explanations are just crap
pyemkey
mrrubox1
What other course do you consider being better than this one?
mrrubox1
Lesson 318. WTF is promise. No explanation about it, NOTHING. Like we already know the concept of it. And lessons that comes after is just not understandable because he didnt exaplain what promise is.
rawstyle
mrrubox1
Yeah it sucks, but if you still need explanation then check this out: https://javascript.info/async
moonchildeverlasting
rawstyle
promises async is the cornerstone of development - i just means - do this and wait for that... or do this and dont wait for that.
spuraigor
Lessons 395 in deploy to aws a have error in react container exec format error wtf?
and that's why he uses optional operator in the both two fields in the AuthenticationRequest interface
username?: string;
password?: string;
Gosh, I'm not a new to programming, but if he doesn't clear things up... it's hard to trace the error.... he just does things and you should figure out how it works and take everything for granted.
hazartilirot
Lesson 594
The author uses the 15th version of PrimeNG whereas nowadays the 16th is available. I'm new to Angular so I cannot say exactly the difference between those versions however you don't need to use single quotes within the usual quotes. It won't work
Here is how it should be:
Lesson 553 - I'm a bit perplexed. What do you mean we are going to create an backend application? How about Angular?
hazartilirot
Wow, I have just reached TYPESCRIPT section! Folks! Mama Samba is no longer in the videos! :D He is retired. :D
hazartilirot
Lesson 481, timeline 02:00
Oh my gooooood. The more I watch the less I like.... he is soooooooo impatient and unreasonable. I have just implemented the feature of fetching a user by id. Instead of using the null in the initial state in AuthContext.jsx - I used a blank object as a kind of a guest with ROLE_GUEST.
Each request I take the user's id from the localStorage, fetch the user from the database by the id and place the user into the state. Before that I retrieve user's email from JWT and compare - if they are the same - ok. If any of localStorage values have been removed from the client's side (jwt or user id) I redirect the user to the login page and delete any data in their localStorage.
What he does in the Login component is he checks if the user is null (state). The difference is he doesn't fetch the user from the database (there is no async request) and it works. In my case, by the time it checks the user it is yet GIMMICK (guest! or it would've been null if I have done the same as he did). Anyway, what we actually need to check is not the user's state, but if the user is authenticated:
I'm so pissed off with the Mama Samba. First of all we haven't implemented a method fetching a user by email. Do we need to implement it? - No! Fetching a user by their emails isn't a good idea. When we create a database our primary key is customers ids. Meaning it would be the fastest way to fetch the user. Moreover we already have an implementation of fetching a user by the user's id.
Come on! Mama Jambo! You could've done more than that!
hazartilirot
Lesson 475 timeline 02:45
I am going to be a champion for opening new cases in his GitHub. :D
He signs in to his account, then is redirected to main page (dashboard), but in the end the backend part blocks the GET request and it doesn't show the user in the list.
hazartilirot
Lesson 470
Why do you say we don't have the ability to create a new user within the UI ? Bloody hell, we have created a page which is available by the link http://localhost:5173/container
It's the first page we have created utilising React. Take a rest from all your hard work mate, you're tired of recording.....
hazartilirot
LESSON 449 + 450 - It's hard to tell why I cannot pass the very first and basic test with bad credentials.... however I had to change BadCredentialException to more common exception. I debugged the app, there was a trace of InternalAuthenticationServiceException. Both exceptions implement AuthenticationServiceException so I decided to use it as a solution:
I will leave the code in case you have the same issue:
@ExceptionHandler(AuthenticationServiceException.class)
public ResponseEntity handleException(
AuthenticationServiceException e,
HttpServletRequest request
) {
return new ResponseEntity(
new ApiError(
request.getRequestURI(),
e.getMessage(),
HttpStatus.UNAUTHORIZED.value(),
LocalDateTime.now()
),
HttpStatus.UNAUTHORIZED
);
}
hazartilirot
LESSON 440 - It's not the only issue! The real problem is that if a clien'ts header includes Bearer with JWT token - we get 404 error, but if we make a GET request as an authenticated user - we get the 200th status. What the heck?
hazartilirot
hazartilirot
Finally, he explains it in the 442-d lesson. Oh, dear......
hazartilirot
LESSON 421 - I think nobody realises how sick and tired I'm of the same expression he always uses - "this is pretty much it". He is just crazy... It drives me mad. :D
hazartilirot
Lesson 393 - Wow, the method with injecting ONE environment variable into .env file is just overwhelming! I bet there should be a better and simpler way to expose values of environment variables within the settings of our AWS instance.
Let's say we may try to override the value of VITE_API_BASE_URL by exposing the variable with a specific value in Dockerrun.aws.json
What he is showing in the lesson is just madness.
hazartilirot
hazartilirot
This is exactly what he does in the next lesson, but he removes the entire section of environment variable for the frontend. **facepalm**
hazartilirot
Lesson 375 disable attribute in Button is no longer valid
Команда внимательно читает ваши комментарии и оперативно на них реагирует. Вы можете спокойно оставлять запросы на обновления или задавать любые вопросы о курсе здесь.
https://github.com/amigoscode/full-stack-professional/issues/18
I'm so angry with the new bloke... he just doesn't know how to explain things.... Actually, there is a chain of events you should know.....
You may end up with the following error:
ERROR TypeError: Cannot read properties of undefined (reading 'username') angular
Basically, when you main page is load, it tries to get the object from those two lines
[(ngModel)]="authenticationRequest.username"
[(ngModel)]="authenticationRequest.password"
the thing is my authenticationRequest - wasn't initialised and I constantly get the error.
That is why he initialises the variable with the empty in LoginComponent
object authenticationRequest: AuthenticationRequest = {};
and that's why he uses optional operator in the both two fields in the AuthenticationRequest interface
username?: string;
password?: string;
Gosh, I'm not a new to programming, but if he doesn't clear things up... it's hard to trace the error.... he just does things and you should figure out how it works and take everything for granted.
The author uses the 15th version of PrimeNG whereas nowadays the 16th is available. I'm new to Angular so I cannot say exactly the difference between those versions however you don't need to use single quotes within the usual quotes. It won't work
Here is how it should be:
transitionOptions="300ms cubic-bezier(0, 0, 0.2, 1)"
https://github.com/amigoscode/full-stack-professional/issues/17
Oh my gooooood. The more I watch the less I like.... he is soooooooo impatient and unreasonable. I have just implemented the feature of fetching a user by id. Instead of using the null in the initial state in AuthContext.jsx - I used a blank object as a kind of a guest with ROLE_GUEST.
Each request I take the user's id from the localStorage, fetch the user from the database by the id and place the user into the state. Before that I retrieve user's email from JWT and compare - if they are the same - ok. If any of localStorage values have been removed from the client's side (jwt or user id) I redirect the user to the login page and delete any data in their localStorage.
What he does in the Login component is he checks if the user is null (state). The difference is he doesn't fetch the user from the database (there is no async request) and it works. In my case, by the time it checks the user it is yet GIMMICK (guest! or it would've been null if I have done the same as he did). Anyway, what we actually need to check is not the user's state, but if the user is authenticated:
const navigate = useNavigate();
useEffect(() => {
const token = localStorage.getItem("access_token");
const id = localStorage.getItem("customer_id");
if (token && id) {
navigate("dashboard")
}
}, [])
The whole story is written in his github:
https://github.com/amigoscode/full-stack-professional/issues/16
I'm so pissed off with the Mama Samba. First of all we haven't implemented a method fetching a user by email. Do we need to implement it? - No! Fetching a user by their emails isn't a good idea. When we create a database our primary key is customers ids. Meaning it would be the fastest way to fetch the user. Moreover we already have an implementation of fetching a user by the user's id.
Come on! Mama Jambo! You could've done more than that!
I am going to be a champion for opening new cases in his GitHub. :D
https://github.com/amigoscode/full-stack-professional/issues/15
that's to say: WebSecurityConfiguration.java
.requestMatchers(HttpMethod.GET, "/api/v1/customers")
.permitAll()
He signs in to his account, then is redirected to main page (dashboard), but in the end the backend part blocks the GET request and it doesn't show the user in the list.
Why do you say we don't have the ability to create a new user within the UI ? Bloody hell, we have created a page which is available by the link http://localhost:5173/container
It's the first page we have created utilising React. Take a rest from all your hard work mate, you're tired of recording.....
I will leave the code in case you have the same issue:
@ExceptionHandler(AuthenticationServiceException.class)
public ResponseEntity handleException(
AuthenticationServiceException e,
HttpServletRequest request
) {
return new ResponseEntity(
new ApiError(
request.getRequestURI(),
e.getMessage(),
HttpStatus.UNAUTHORIZED.value(),
LocalDateTime.now()
),
HttpStatus.UNAUTHORIZED
);
}
Let's say we may try to override the value of VITE_API_BASE_URL by exposing the variable with a specific value in Dockerrun.aws.json
What he is showing in the lesson is just madness.
https://github.com/amigoscode/full-stack-professional/issues/13