Cảm ơn bác vì bài viết tâm huyết. Mình có cùng suy nghĩ với bác. Mình cũng nhận thấy điều này khi ChatGPT ra đời và chia sẻ với đồng nghiệp của mình về cái tên CloseAI. Mọi người cũng khá tán thành. Không có gì là Open ở đây cả.
Họ đang phải cạnh tranh để sinh tồn khi đối thủ họ là ông lớn thừa tiền thừa người, cũng như món phở, hay nước uống cocacola không thể yêu cầu họ công bố bí mật kinh doanh.
đại khái là [SecurityConfig extends WebSecurityConfigurerAdapter] sẽ khai báo config, tại đây mình khai báo là có sử dụng [AuthenticationProvider]
sau đó khai báo [AuthenticationProvider extends DaoAuthenticationProvider], rồi override [Authentication authenticate(Authentication authentication)]
tại đây mình thực hiện Authentication thông qua [UserService implements UserDetailsService]
sau đó mình khai báo [UserService implements UserDetailsService] và override [UserDetails loadUserByUsername(String username)] để cho nó dùng CSDL của mình là OK
đại khái là thế
Có vẻ bạn đang focus vào phía FE, tại sao vụ support both web và mobile không đưa về Backend?
Trong middleware authentication, bạn có thể check header key nào đó ví dụ như device: "mobile" | "browser"
Sau đó, nếu device là mobile thì ta sẽ check trong authorization header, ngược lại bạn lấy từ cookie.
Đã dùng cookie thì sẽ không set vào authorization nữa, ta cố gắng ẩn đi, còn phải show lại làm gì
Nếu gửi token qua cookie thì ko phải set token vào trường Authorization của request header nữa đúng ko? Nếu muốn cả web và mobile app dùng chung api thì làm thế nào hả bạn? Tôi thấy việc set Authorization mâu thuẫn vãi chưởng, vì muốn set được thì javascript phải đọc được, mà đọc được bằng javascript thì cũng dễ bị hack bởi XSS.
Tôi đặt câu hỏi này từ lâu, nhưng đa phần các đồng nghiệp của tôi đều xuề xòa với vấn đề này, toàn copy code từ dự án cũ về là xong nhiệm vụ.
Hi anh, em cảm ơn bài hướng dẫn của anh nhiều!
Anh chia sẻ tài liệu giúp em ạ. Email em: tranha2405@gmail.com.
Em cũng muốn đăng ký học khoá để thi chứng chỉ này. Anh có thể giới thiệu giúp em chỗ học uy tín chi phí phải chăng ko ạ? Thank anh so much!
THẢO LUẬN
Cảm ơn bác vì bài viết tâm huyết. Mình có cùng suy nghĩ với bác. Mình cũng nhận thấy điều này khi ChatGPT ra đời và chia sẻ với đồng nghiệp của mình về cái tên CloseAI. Mọi người cũng khá tán thành. Không có gì là Open ở đây cả.
Cám ơn anh, bài viết rất hữu ích ạ
lỗi đã rất là rõ e ơi, address already in use.
Cổng 6379 đã được dùng, e dùng cổng khác nhé
tên service e thích để là gì cũng được, nhưng chú ý rằng nó cũng là tên host luôn.
Tức là ví dụ trước đó tên service là
dbthì từ app connect tới database thìDB_HOST=db.nếu e muốn đổi tên service thành
mongothìDB_HOST=mongo.chú ý rằng cái label
app: myappcủa deployment thì bài này mình mới để vậy chứ ko dùng làm gì cảbạn xem lại phần đầu bài, đoạn mình đánh label rất rõ ràng kiểu
app: myapp-podcác thứ nhé, hiểu rõ thứ tự nó map label nào vào đâu.quen rồi thì hãy dùng kiểu dùng chung 1 cái
app: myappcho các chỗđúng rồi e ạ, nếu e dùng ENTRYPOINT ở đây thì nó sẽ override CMD mặc định của php-fpm luôn
Họ đang phải cạnh tranh để sinh tồn khi đối thủ họ là ông lớn thừa tiền thừa người, cũng như món phở, hay nước uống cocacola không thể yêu cầu họ công bố bí mật kinh doanh.
Good insight, Good job em. Keep going
Thích bài này nè. Toàn những cái đang làm thì giờ hiểu sau hơn chút
Có bản nodejs ko ạ:>
bạn ơi dùng firebase cli version nào mới không bị lỗi an unexpected has occured
đại khái là [SecurityConfig extends WebSecurityConfigurerAdapter] sẽ khai báo config, tại đây mình khai báo là có sử dụng [AuthenticationProvider] sau đó khai báo [AuthenticationProvider extends DaoAuthenticationProvider], rồi override [Authentication authenticate(Authentication authentication)] tại đây mình thực hiện Authentication thông qua [UserService implements UserDetailsService] sau đó mình khai báo [UserService implements UserDetailsService] và override [UserDetails loadUserByUsername(String username)] để cho nó dùng CSDL của mình là OK đại khái là thế
Tuyệt vời quá ad ơi, gãi đúng chỗ tui lun 😄
Có vẻ bạn đang focus vào phía FE, tại sao vụ support both web và mobile không đưa về Backend?
Trong middleware authentication, bạn có thể check header key nào đó ví dụ như
device: "mobile" | "browser"Sau đó, nếu device là mobile thì ta sẽ check trong authorization header, ngược lại bạn lấy từ cookie.Đã dùng cookie thì sẽ không set vào authorization nữa, ta cố gắng ẩn đi, còn phải show lại làm gì
Nếu gửi token qua cookie thì ko phải set token vào trường Authorization của request header nữa đúng ko? Nếu muốn cả web và mobile app dùng chung api thì làm thế nào hả bạn? Tôi thấy việc set Authorization mâu thuẫn vãi chưởng, vì muốn set được thì javascript phải đọc được, mà đọc được bằng javascript thì cũng dễ bị hack bởi XSS.
Tôi đặt câu hỏi này từ lâu, nhưng đa phần các đồng nghiệp của tôi đều xuề xòa với vấn đề này, toàn copy code từ dự án cũ về là xong nhiệm vụ.
Em chào anh ạ. Bài viết của anh hay quá. Em có làm theo hướng dẫn. Tuy nhiên, em đang bị lỗi về redis. Mong anh giúp đỡ em ạ
Hi anh, em cảm ơn bài hướng dẫn của anh nhiều! Anh chia sẻ tài liệu giúp em ạ. Email em: tranha2405@gmail.com. Em cũng muốn đăng ký học khoá để thi chứng chỉ này. Anh có thể giới thiệu giúp em chỗ học uy tín chi phí phải chăng ko ạ? Thank anh so much!
Anh chia sẻ tài liệu giúp em ạ. Email: tranha2405@gmail.com
thank bạn