JWT là gì? JSON Web Token. Ở phần trước chúng ta đang nói đến việc xác thực firebase với custom token. Nhưng nhiều bạn quay sang hỏi về việc xác thực JWT (JSON Web Token). Chắc do các bạn sử dụng JWT nhiều hơn, cho nên hôm nay, trong bài viết này tôi sẽ viết một module nhỏ để giúp các bạn nào chưa hiểu thì có thể hiểu thêm.
Nên lưu token ở đâu trong ba phương pháp phổ biến như cookie, localStorage, sessionStorage. Sau những bài viết về JSON Web Token(JWT) đa số các bạn cũng đã hiểu và đã apply cho các ứng dụng của mình. Các luồng đi của việc created và verify một token xem như đã xong, nhưng có có một vấn đề quan trọng mà các bạn bỏ qua.
JSON Web Token (JWT) là một cơ chế bảo vệ tài nguyên có thể nói đến bây giờ nó phổ biến rộng rãi đến mức nhà nhà, người người ai cũng biết đến nó. Nhưng hiện tại qua nhiều diễn đàn, vẫn còn đâu đó những câu hỏi như làm sao lấy lại token mới nếu như hết hạn sử dụng refresh token?
JSON (JavaScript Object Notation) được sử dụng rộng rãi trong việc chia sẻ dữ liệu với nhiều ngôn ngữ khác nhau. Nhờ tính đồng nhất và đơn giản trong việc xử lý dữ liệu.
JSON NodeJS (JavaScript Object Notation) được sử dụng rộng rãi trong việc chia sẻ dữ liệu với nhiều ngôn ngữ khác nhau. Nhờ tính đồng nhất và đơn giản dữ liệu, do đó trong các ứng dụng Nodejs cũng được thường xuyên sử dụng.
Ở bài viết trước, chúng ta đã làm rõ về cách lưu trữ token ở đâu trên Client. Và cách nào an toàn hơn và hạn chế được các XSS attack. Do đó ở bài này chúng ta sẽ triển khai xây dựng một RESTful APIs bảo mật token hạn chế việc đánh cắp khi mà càng ngày hackers luôn luôn rình mò ở quanh ta :D.
Sau khi bài viết sử dụng Cookie và Session để hoàn tất xác minh đăng nhập, và chúng ta đã phát hiện ra một số vấn đề ở cơ chế đăng nhập này. Thì bầy giờ chúng ta tiếp tục theo dõi và tìm hiểu cơ chế login khi sử dụng token và đây là một phương pháp đang được các dev quan tâm nhất hiện nay.
SSO là gì? Tên tiếng Anh đầy đủ của SSO là Single SignOn, hay còn gọi là cơ chế đăng nhập một lần nhưng có thể sử dụng khắp mọi nơi. SSO có trong nhiều hệ thống ứng dụng. Người dùng chỉ cần đăng nhập một lần để truy cập vào tất cả các hệ thống ứng dụng đáng tin cậy lẫn nhau. Nó bao gồm một cơ chế có thể ánh xạ thông tin đăng nhập chính này với các ứng dụng khác để đăng nhập cùng một người dùng. Nó là một trong những giải pháp phổ biến nhất được sử dụng rộng rãi hiện nay. Và nếu bạn là một lập trình viên thì bạn cần nên hiểu nó.
Convert value to String in javascript. Quan trọng trong tipjs này, chúng ta sẽ tìm ra một phương pháp đúng đắn để chuyển một giá trị sang chuỗi sử dụng javascript. Và thật bất ngờ đó không phải là value.toString().
Fetch api là gì? Trước đây nếu bạn nào đã từng sử dụng XMLHttpRequest để giao tiếp lấy dữ liệu từ server đến client hay ngược lại thì cũng sẽ hiểu nôm na Fetch api javascript cũng vậy. Fetch api cho phép những nhà phát triển lấy resource và thực hiện những yêu cầu thông qua http.
Shallow copying vs Deep copying in Object javascript. Nghe tiêu đề thôi cũng gây war rồi. Nhưng mới đây, trong vụ phỏng vấn dev js thì có hỏi câu hỏi này, dù kết quả có tiến bộ hơn những đợt phỏng vấn cách đây vài tháng nhưng đa số các bạn hiểu về câu hỏi này nhưng vẫn trả lời chưa rõ hoặc không giải thích được.
Làm việc với array thì có thể đơn giản, nhưng khi làm việc với Array of Objects thì nó hoàn toàn khác. Khác ở nhiều khía cạnh, tình huống, kỹ năng, kinh nghiệm. Và tôi tóm lượt lại nhiều câu hỏi trong quá trình làm việc và trên stackoverflow và hy vọng bài viết này có thể giúp bạn giải quyết nhanh các tình huống.
Memcached bạn đã từng nghe nói về cụm từ này bao giờ, redis, firebase...? Và nếu nghe rồi bạn đã sử dụng chúng ở đâu cho những ứng dụng của mình? Và bạn dùng công nghệ hay công cụ gì để memcached ? Tất cả những câu hỏi đó, sẽ được trả lời trong bài viết này. Để có cái nhìn tổng quát hơn, chúng ta sẽ đi vào một trường hợp thực tế.
Deep copy Object, Array, Function Javascript - Sau bài viết về "Sự khác nhau giữa Shallow copy và Deep copy javascript" thì có nhiều bạn đã hiểu hơn và có những bàn luận sâu sắc về chủ đề này. Và có nhiều bạn đã hỏi nếu dùng JSON.parse() thì sẽ bị miss những params như là NaN, function hay Symbol... Vậy có cách nào deep copy object, Array, Function Javascript một cách nhanh chóng và hiệu quả hay không?
Axios vs Fetch - Nếu như bạn đã từng làm việt với HTTP calls trong javascript hay nodejs thì bạn cũng đã từng sử dụng 1 trong 2 thằng này. Axios là một module mạnh mẽ và phổ biến trong javascript, và tương tự Fetch được phát hành 2015 cho đến nay
Axios interceptor la gi? Tại sao lại được quan tâm nhiều đến vậy, hiệu quả của việc sử dụng interceptors trong Axios như thế nào? Và cơ chế lấy lại token khi token hết hạn khi sử dụng interceptors axios kết hợp với refreshToken.
Expressjs giờ đây không còn quá xa lạ với những anh em làm web hay sử dụng expressjs rest api với môi trường node nữa rồi. Nhưng hẳn nhiều trường hợp trong khi làm rest api khi check data thì chỉ có anh em làm nhiều mới biết, null, length, underfined...
Project Express và Node.Js - Đây là một trong số câu hỏi tuần này. Một kiến trúc tốt chưa chắc phù hợp với người này, người kia. Nhưng xét về tổng thể thì 10 người 8 người đồng ý
Tổng hợp 150 packages và resource Node.js chất lượng cao - Cập nhật liên tục
Trong phần mở bài tôi sẽ nói luôn, vì tôi sợ mất thời gian của các bạn khi click vào để đọc bài viết. Việc xác xác thực thông qua custom token là ở trường hợp hệ thống của của không xác thực qua những hình thức third party như (facebook, github, google mail...). Nếu bạn không thuộc trường hợp này stop tại đây và bạn đọc thêm về những lợi ích khi sử dụng firebase như hosting, notification, app index, storage, authentication, cloud mesenger, test lab
JSONP là gì? JSONP (json with padding) là một phương pháp hay còn gọi là phương tiện giao tiếp giải quyết vấn đề truy cập dữ liệu giữa các domain khác nhau. Do chính sách cùng nguồn gốc chính vì vậy các trang web có thể lấy dữ liệu JSON được tạo động từ các nguồn khác và chế độ sử dụng này được gọi là JSONP. Dữ liệu được thu thập bằng JSONP không phải là JSON, mà là JavaScript tùy ý, được trình thông dịch JavaScript thực thi thay vì được phân tích cú pháp bởi trình phân tích cú pháp JSON.
Cookie parser là một thằng trung gian hay gọi là middleware trong Expressjs được sử dụng để phân tích cú pháp cookie và cũng là một phần mềm trung gian phổ biến khi những lập trình viên khởi tạo dự án sử dụng nodejs và expressjs. Liệu chúng giúp gì cho chúng ta? Hãy xem một chút về code và lắng nghe lời giải thích.
Promise và async-await những khái niệm không còn xa lạ gì nữa đối với devjs hiện nay, bởi vì nó quá phổ biến và được sử dụng hằng ngày trong nodejs, reactjs... rất nhiều. Nhưng hầu hết, chúng ta để ý kỹ xem, nếu như dùng promise rồi thì sẽ không dùng async-await và ngược lại. Tại sao?
Bài viết trước chúng ta đã bàn đến việc tại sao lại track javascript error ở khách hàng. Vì sao việc đó lại quan trọng? Khi tôi viết ra thì có nhiều bạn cùng chung một vấn đề.
thủ thuật javascript - Để giúp các bạn mới về javascript thì bài này sẽ giúp các bạn hiểu "Các mẹo hữu ích để viết JavaScript ngắn gọn và hiệu quả hơn".
Refresh token là gì? Ở bài trước tôi đã hướng dẫn các bạn cách xác thực REST API với JWT(JSON Web Token) thông qua một Access Token, và hôm nay chúng ta tiếp tục tìm hiểu về Refresh Token. Tại sao lại có thêm Refresh Token? Và Refresh Token dùng để làm gì?
Extra data from javascript, hay còn gọi là trích xuất dữ liệu là một phương pháp lâu đời giúp lập trình viên có thể chuyển đổi một dữ liệu gốc sang dữ liệu mới với nhiều cách khác nhau. Giống như photocopy vậy.
Ajax jquery không còn lạ gì với anh em developers nữa, những có nhiều thứ tôi nghĩ sẽ có nhiều bạn còn chưa biết và chưa sử dụng bao giờ như sử dụng ajax with Promises and deferred objects? Làm thể nào gọi Multiple AJAX một cách tốt nhất? Thì trong bài viết này sẽ giới thiệu sâu và kỹ hơn về ajax.
Những tính năng của javscript kể từ khi ES6 ra đời cho đến chuẩn bị stage 4 của ES11. Và kết thúc năm 2019 thì chúng ta có học được những tính năng gì trong những feature javascript dưới đây.
Hôm bài viết này tôi và các bạn đi tìm hiều về NodeJS Session. Và Node.JS Session sẽ được viết và demo trong Express JS. Cụ thể hơn đó chính là sử dụng Express-session một middleware trong ExpressJs.
Triển khai quy trình đăng ký người dùng trong dự án Shopdev, bao gồm kiểm tra email hoặc số điện thoại, mã hóa dữ liệu, gửi OTP qua Kafka và AWS, và lưu trữ dữ liệu bảo mật.
Bài này đơn giản chỉ là giới thiệu cho các devjs về những dòng code thường xuyên sử dụng với developer javascript. Nó đang giúp tôi rất nhiều, và hy vọng bạn cũng vậy.
Token là gì? Authentication là gì? Session, cookies, SessionId... Nó là gì? Những khái niệm này tưởng chừng như ai cũng biết. Nhưng không hẳn như vậy, khi được hỏi thì trả lời một cách mông lung kiểu như mã hoá dữ liệu vậy. Đây, các bạn có thể tham khảo thêm định nghĩa ở bài post này.
Sau khi ở part 2, devjs cũng đã hiểu vì sao chúng ta lại chọn buil a project with nodejs, expressjs, mongodb rồi. Và để tiếp tục Series này thì ở phần 3 này, chúng ta sẽ setup một project theo một quy chuẩn và rất phổ biến.
Map là gì? Nghe có vẻ đơn giản, vì mỗi lập trình viên đều nghe về "map" rất nhiều. Nhưng để hiểu nó thì cũng không phải đơn giản, vậy trong bài viết này, tipjs sẽ cùng các bạn tìm hiểu về Map và Object là gì? Và khi nào nên sử dụng chúng? Và quan trọng hơn là performance giữa chúng như thế nào?
Đây là một trường hợp rất phổ biến nhưng lại ít người quan tâm tới nó. Bởi vì họ là những lập trình viên level 1 hoặc là họ đẵ gặp rồi nhưng không có cách giải quyết. Vì sao?
Global fetch API hiện đã có phiên bản mới nhất của JavaScript runtime Node.js. Node.js 18 bao gồm bản cập nhật cho công cụ JavaScript V8, với tính năng fetch được bật theo mặc định và module test.
Request entity too large nodejs, vâng chính là lỗi đó Anh. Chúng ta bị chơi rồi, nhưng Bạn A cũng đã khắc phục xong nhanh chóng, sao nó đơn giản mà chúng ta lại bị bỏ qua nhỉ?
Điều gì khiến JWT phổ biến. Lý do mà khiến `JWT` trở nên phổ biến trong những năm gần đây chính xác là 2014 là chúng có thể chứa được nhiều kiểu dữ liệu như `JSON`, và nó có nhiều lợi ích so với các kiểu truyền thống...
Build chat system sử dụng với heroku. Đây là phần thứ 5 trong series "Đề tài: Build một blog + chat sử dụng nodejs, expressjs, mongodb, firebase". Nhiều việc qúa nên hôm nay, mới có thời gian build giao diện chat lên heroku cho các bạn. Bài post này chủ yếu hướng dẫn các bạn push project lên heroku.
Javascript là một ngôn ngữ phổ biến trên thế giới, nếu không nhầm thì nó đã hơn 20 năm, và hơn bao giờ hết nó đang phát triển một cách mạnh mẽ từ front-end đến backend và thậm chí là database(mongodb). Do đó việc chúng ta sử dụng javascript hằng ngày là điều hiển nhiên. Và javascript là một gợi ý tuyệt vời khi phát triển một dự án nhỏ, nhanh gọn, tối ưu cao.
Học lập trình web, hay học lập trình bất cứ một ngôn ngữ nào như C, php, python… cũng phải có những lộ trình, nhưng nếu bạn đi sai ngay từ đầu thì có thể để quay lại cũng không ít thời gian. Với bài viết được đăng lên geeksforgeeks.org thì mọi chuyện sẽ dễ dàng hơn với các bạn.
How to set header and options in axios? Một câu hỏi nhanh và thiết thực, và những hướng dẫn sau đây nhanh gọn nhẹ hướng đến người đọc nắm bắt nhanh nhất có thể khi học Axios.
Stream trong Node.js được sử dụng khi xử lý các tình huống với các File lớn hoặc phát trực tiếp liveStream một ứng dụng nào đó. Thật sự nếu kỹ năng chưa đủ thì có lẽ sẽ làm một thảm họa, ví dụ sau đây làm bằng chứng...
Để convert một array thành một String thì có nhiều cách, nhưng dưới đây có những trường hợp đặc biệt mà hôm nay tôi đã gặp, và cũng muốn chia sẻ cùng anh em. Và quan trọng là notes lại cho chính bản thân mình, lỡ sau này có gặp thì copy cho nhanh.
Việc mongodb query chậm thì nó có nhiều yếu tố như phân bô dữ liệu chưa hợp lý, trong một collection chứa quá nhiều documents hay đại loại là chưa create index trong mongodb. Nhưng ở đây là một vấn đề khác.
Bạn có biết Schiffmann, người Mỹ gốc Anh 17 tuổi đã tạo ra trang web nổi tiếng "ncov2019.live". Vậy anh ấy đã lấy data ở đâu và cách lấy như thế nào? Bài viết đây, sẽ giúp bạn lấy được những thông số đó. Biết đâu bạn sẽ tạo nên cơn sốt.
Trong thực tế các dự án về nodejs không ít trường hợp upload và resize hình ảnh và có nhiều cách để resize như sharp, ImageMagick and GraphicsMagick settings...
Elasticsearch không còn xa lại, một công cụ mạnh mẽ truy vấn dữ liệu. Dể hiểu vì sao các công ty tuyển dụng đều thêm điều kiện "Ưu tiên có kinh nghiệm làm việc với Elasticsearch". Tôi cam đoan bạn sẽ không phí tiền đóng NET để đọc bài viết này.
Nếu bạn là một lập trình viên mới có thể bạn không biết anh ấy. Nhưng nếu bạn là cũ thì mà không biết về anh ta thi có lẽ rất tiếc. Vì qua các products của anh ấy. Các bạn sẽ thán phục con người này.
Làm thế nào để chuyển đổi một Address sang Longitude và Latitude. 2 ví dụ sau đây có thể giúp bạn xử lý nhanh chóng.
javascript async await được phát triển kể từ khi ES7 ra đời, trước đó có promise ở ES6 và xa hơn nữa là callback. Ở phần này chủ yếu nói về try catch.
nodejs http request là một chức năng cốt lõi cho các ngôn ngữ hiện đại và là một trong những điều đầu tiên mà nhiều developer nên học nhiều cách để thích nghi với môi trường mới. Khi nói đến Node.js có một số lượng hợp lý các giải pháp cho vấn đề này cả được xây dựng trong ngôn ngữ và bởi cộng đồng. Sau đây mình liệt kê cho các bạn những cách phổ biến nhất mà các dev hay sử dụng nhất... Và cũng tất nhiên bạn nên tìm hiểu xem Http Request là gì trước khi đọc bài này.
Bearer token là gì? Đây là một câu hỏi rất hay, ngay bản thân tôi cũng không hiểu tại sao tôi lại cắm đầu vào code mà không hiểu vì sao người ta lại quy định Bearer trước token trong việc Authorization trên header.
Hướng dẫn backup MongoDB chỉ trong vòng 1 phút, có thể chạy tự động cho dù chúng ta đang ngủ đi chăng nữa. Nhưng điều quan trọng là backup rồi, lưu database đó ở đâu?
NPM là gì? NPM là viết tắt của Node Package Manager, nếu bạn là một lập trình viên phát triển web hay node.js thì sẽ trông thấy rất quen thuộc. Hay cách khác là npm là một kho lưu trữ trực tuyến để xuất bản các dự án Node.js mã nguồn mở.
Object copy vs Array copy javascript nhìn qua rất dễ thực hiện bạn chỉ cần sử dụng clone Object với object.assign() và clone Array với Array.from() là xong. Nhưng đó là không phải cách chính xác, vì sao nó sai? Và làm thế nào cho đúng? Hãy xem ví dụ sau đây.
Promise javascript ra đời kể từ khi ES6 (ECMAScript 2015) chính thức giới thiệu, nhưng đến bây giờ việc sử dụng Serial Promise hay parallel Promise vẫn còn một số vấn đề mà còn nhiều developers vẫn chưa biết tận dụng hết khả năng của Promise.all(). Vậy trong bài viết này chúng tôi sẽ giới thiệu lại một lần nữa thông qua những ví dụ cụ thể.
Metadata là gì? Phân tích url từ nodejs chúng ta có thể lấy Title, Description, Keywords và Images từ một url. Một tips nodejs đơn giản nhưng hiệu quả dành cho dev mới. Giờ đây khi sử dụng node thì có rất nhiều module hỗ trợ từ npm, cho nên rất dễ dàng.
Caching in Node.js using Redis - Đã có nhiều bài viết nói về sự lợi hại của cache. Nhưng để chứng minh điều đó, thì họ lại không nói. Các bài viết thiên về SEO hơn chúng ta nghĩ. Và đây là bài viết của dân kỹ thuật, tôi sẽ chứng minh sức mạng của việc sử dụng cache.
Nodejs - Cách thiết kế hệ thống tặng phiếu giảm giá tăng đột biến. Bài viết mang tính thực tế cao trong giai đoạn thiết kế hệ thống lớn. Và nằm trong Series - Con đường trở thành kỹ sư...
Ở những bài trước chúng ta đã nói nhiều về JWT là gì? Vì sao phải sử dụng JWT, trong suốt quá trình sử dụng JWT chúng tôi có nhận được nhiều phản hồi về chủ đề JWT. Trong đó có một vấn đề mà có nhiều bạn chưa hiểu đó là 'Refresh token là gì'. Nếu bạn có chung một câu hỏi như vậy thì bài viết này sẽ dành cho bạn.
Upload files using multer in nodejs. Ở bài trước tôi đã show một demo nho về bài viết upload files với formidable trong nodejs và express. Và hôm nay để tiếp tục giúp các bạn giải quyết về vấn đề upload file thì tôi sẽ demo cho các bạn một cách nữa đó là upload file với multer. Một trong những thư viện giúp handling multipart/form-data rất phổ biến.
ES6 giờ đây đã được những developer javascript sử dụng chúng thường xuyên trong lập trình js. Và trong bài viết này thì anonystick sẽ giới thiệu cho các bạn về 24 đoạn mã được sử dụng thường xuyên và thực tế nhất của tác giả Madza
OAuth với Node.js và Github trong bài viết KÈM SOURCE này thì chúng ta sẽ biết thêm một cách triển khai login với github. Chính vì cơ chế của github rất tiện lợi nên việc viết code cũng không phức tạp như nhiều người từng nghĩ.
I think everyone has encounter a bug in his life - not the natural, but the real one - the code one. Like really, even the most experienced programmers need to watch out for bugs. These are such easy-to-do and nasty things, that you can consider yourself lucky if you haven't ever had one in your code-base.
Uploading files Cloudinary using Multer including single and multiple files. Sau bài viết "upload files using multer expressJs" và tôi đã hứa là sẽ show cho các bạn một ví dụ về upload images lên cloudinary sử dụng multer. Cloudinary là gì? Tại sao tôi lại chọn hosting này? Và câu trả lời sẽ có trong bài viết này. Trước khi tiếp tục hành trình upload file lên Cloudinary thì tôi muốn các bạn nên xem bài viết trước đó là upload files với Multer. Lúc đó bạn sẽ hiểu hơn và chính tôi cũng đỡ phải giải thích lại về cách sử dụng Multer. Ok bắt đầu thôi.
Firebase push notification. Hay có thể gọi là firebase send notification from server. Bạn hình dung thế này, khi điện thoại của bạn nhận được notification bởi một ứng dụng mà bạn đã install và làm sao bạn lại nhận được notification đó.
Webpack là một module bundler cho phép bạn viết bất kỳ định dạng module nào (cũng có thể kết hợp), sau đó biên dịch cho trình duyệt. Webpack phân tách mã dựa trên cách nó được sử dụng trong ứng dụng của bạn và với phân tích trách nhiệm theo module này, việc quản lý, gỡ lỗi, xác minh và kiểm tra mã của bạn trở nên dễ dàng hơn nhiều.
Không nói quá chứ bất kỳ chương trình phần mềm nào cũng cần phải có file quản lý log một cách chuyên nghiệp. Chính vì lẽ đó mỗi ngôn ngữ lập trình đều có những module đi kèm như java thì có Log2j, và trong nodejs thì có rất nhiều chẳng hạn như Winston, log4js, Bunyan. Và trong bài viết này thì tôi chỉ đề cập đến Winston vì ở đó có những tất cả mà một người làm backend như tôi đang tìm kiếm.
CORS là gì? Tên đầy đủ là Cross-Origin Resource Sharing. Hiểu sâu hơn đó chính là chia sẻ tài nguyên có nhiều nguồn gốc khác nhau. Chính sách nguồn gốc giống nhau của trình duyệt là một cơ chế bảo mật quan trọng. Khách hàng từ các nguồn khác nhau không thể truy cập tài nguyên của nhau nếu không được phép. Định nghĩa của tương đồng là giao thức, tên miền và số cổng của liên kết truy cập là giống nhau.
JavaScript is one of the most popular languages you can learn. As many people say: “If you’re going to learn just one programming language, go for JavaScript.” If this sounds compelling to you, here’s a list of 127 beneficial snippets that you can learn and use immediately.
Bài viết này cũng đơn giản nhưng cũng giúp các bạn mới học nodejs về cách "Làm thế nào upload files trong nodejs". Các bạn chỉ cần copy/paste là chạy thôi, nhưng cố gắng code lại, mỗi lần code lại bạn sẽ nhớ nhiều hơn là copy.
jsonwebtoken rất dễ bị tấn công vì nhiều yếu tố trong đó việc lưu trữ access token trên Client cũng là một trong điểm yếu đó. Có hai cách phổ biến để tránh bị đánh cắp đó là đừng sử dụng jwt hoặc không để token ở máy khách. Chúng tôi đã chọn cách không lưu trên Client.
Debezium là một công cụ mạnh mẽ cho phép chúng ta theo dõi các thay đổi trong cơ sở dữ liệu MySQL và phát những thay đổi đó dưới dạng các sự kiện vào Kafka.
console.log là gì? Một câu hỏi hài hước vì ở bất kỳ đâu trong javascript các lập trình viên cũng quen thuộc với console.log. Nhưng tôi cá đôi lúc nó cũng khiến chúng ta rơi vào cảnh hỗn loạn khi print tất cả các record đều giống nhau. Tôi cũng vậy, trong khi viết code tôi cảm thấy bất tiện và tôi cảm thấy sự cần thiết khi out ra với các color mà tôi chỉ định. Bài viết này tôi sẽ thảo luận với các bạn về vấn đề này.
ngrok là gì? localtunnel là gì? Trong bài hướng dẫn này, bạn sẽ biết cách đưa ứng dụng local của bạn ra thế giới.
Redis được biết đến là một database được lưu trữ trong memory được sử dụng để triển khai livestream, message queue, cache, và lưu trữ dữ liệu nếu muốn.
Check object empty js. Một bài viết trình bày 6 cách để kiểm tra object rỗng trong JavaScript dành cho những bạn mới tập làm quen lập trình với JavaScript thông qua object. Ở bài viết này thì bạn sẽ được giới thiệu về object trong JavaScript thông qua những cách làm sử dụng es5 và es6.
Mô hình MVC cho đến thời điểm này thì theo tôi vẫn giữ một vị trí đặc biệt, mặc dù đã có những pattern khác ra đời. MVC giúp chúng ta chia nhỏ modules mà dễ dàng quản lý, và socketio sẽ được tích hợp như thế nào?
Tài liệu học JavaScript từ Fresher cho đến Junior. Tài liệu có 106 chapter. Một cuốn sách học JavaScript hiệu quả, đó là một khoá học hoàn chỉnh.
Rules for Firebase? Nếu bạn nào or team nào phát triển ứng dụng với Firebase thì việc set rules là một việc rất cần thiết và nó quan trọng trong việc bảo vệ dữ liệu trong Firebase. Trong bài viết nhanh này, tôi show cho các bạn những cách set rules trong firebase. Với những ai sử dụng thì việc này rất cần thiết để đọc bài này.
I make multiple projects during the time like Tvflix, GSON, Appy Dev and many other micro projects. So finding these free tools as alternatives for my project has become .
Chúng ta đều biết rằng Redis cung cấp vô số kiểu dữ liệu, có 5 kiểu phổ biến là String (chuỗi), Hash (băm), List (danh sách), Set (tập hợp), Zset (tập hợp có thứ tự). Với việc cập nhật phiên bản Redis mỗi ngày tinh vi hơn, thì có 4 kiểu dữ liệu được hỗ trợ thêm đó là
Golang cho người mới bắt đầu sẽ được thiết kế dành cho những sinh viên chưa có hoặc chỉ có kinh nghiệm lập trình cơ bản. Trong topic này, bạn sẽ học những kiến thức cơ bản về ngôn ngữ lập trình go backend
Không cần phải giới thiệu về express js là gì? Bài học hôm nay bạn sẽ học được cách theo dõi log của một dự án khi sử dụng nodejs kết hợp với winston. Bạn có thể lấy code trên github về và xem xét áp dụng cho dự án của mình.
Sau khi chúng ta triển khai thực hiện chức năng [Go 29: Implement IUserLogin - Register] và `User` sẽ nhận được `OTP` được gửi qua `EMAIL` or `SMS` đã đăng ký. Sau nó nếu User nhập OTP
Mysql nodejs thêm Expressjs là một kết hợp hoàn hảo để chúng ta có thể tạo dựng cho mình một blogs nhanh chóng. Mở rộng hơn về kết hợp này thì những lập trình viên có thể sử dụng những công cụ này để có thể phát triển cơ sở hạ tầng để phát triển một REST ful dành cho nhiều ứng dụng.
Đầu tiên chúng ta thống nhất với nhau là hiểu khái niệm Full text search là gì? này trước rồi mới tới việc thực hành. Full text search đơn giản chỉ là một hình thức nâng cao việc tìm kiếm dữ liệu trong database mà thôi.
Unit test NodeJS rất dễ viết và có thể được thực thi mà hầu như không cần cấu hình gì cả chỉ cần install package là ok, vì chúng thường được thực hiện chỉ bằng một lệnh gọi function.
Connection pool trong nodejs là rất quan trọng, nó là một kỹ thuật rất quan trọng cho việc tương tác bất kỳ resource như Mysql, PostgreSQL, Redis or MongoDB.
Firebase là Backend-as-a-Service - BaaS. Firebase theo nghĩa rộng là nền tảng phát triển ứng dụng trên thiết bị di động và web. Firebase giải phóng các developer để tập trung tạo ra trải nghiệm cho người dùng sử dụng sản phẩm một cách tuyệt vời.
Học nodejs. Hãy tưởng tượng một công ty giống như Twitter có thể gọi là ông lớn trong việc sử dụng công nghệ, tính năng chủ yếu của Twitter là phải nhận các tweet của hàng triệu người dùng khắp thế giới và ghi chúng vào cơ sở dữ liệu mỗi ngày.
Modern JavaScript Cheatsheet - Tipjs chia sẻ một bài post rất hữu ích về các tính năng của JavaScript. Bài viết này sẽ có thể được update mỗi ngày, vì tính năng JavaScript vô số kể, cho nên nếu có miss một tính năng nào đó thì tipjs cũng mong có sự đóng góp của các bạn.
Design pattern là gì? Builder pattern là một mẫu thiết kế thuộc "Nhóm khởi tạo" (Creational Pattern). Và là một mẫu thiết kế để cung cấp một giải pháp linh hoạt để tạo các đối tượng. Cụ thể hơn là Builder pattern giúp chúng ta xây dựng một đối tượng phức tạp bằng cách sử dụng các đối tượng đơn giản bằng cách cung cấp cách tiếp cận từng đối tượng đơn giản. Cùng xem một hướng dẫn dưới đây.
Proxy server là một khái niệm hot từ những năm gần đây, vì nếu server của bạn có những thông tin nhạy cảm như ngân hàng thì việc thiết lập một máy chủ proxy bên ngoài tường lứa là điều cần thiết nhất. Bởi vì khi một ai đó muốn truy cập vào Server này thì nhiệm vụ của nó phải qua mặt proxy server.
Đăng nhập là chức năng thường được sử dụng trong mọi trang web hay những app hiện nay. Không khó để nhận ra vấn đề này đang được quan tâm nhất bởi vì lướt qua những page về lập trình như tips javascript, hay javascript Việt Nam đều thấy nhiều câu hỏi ở đó. Thật sự bạn có biết khi enter thì cơ chế nó hoạt động như thế nào không? Và hiện nay, những ứng dụng lớn họ triển khai login như thế nào? Hôm nay chúng tôi sẽ giới thiệu một số phương pháp đăng nhập phổ biến nhất
Memory leak trong javascript. Một đề tài mà không phải ai cũng muốn quan tâm, và có muốn quan tâm thì cũng không dễ có thể hiểu được về bộ nhớ javascript. Nhưng nếu như bạn hay theo dõi những bài viết trước thì nó quả là dễ dàng.
Promise.all là gì? Tất cả những gì bạn biết về Promise.all là gì? Bạn đã dùng Promise.all khi nào? Performance khi dùng Promise.all thế nào? Những câu hỏi này, chúng ta sẽ cùng thảo luận trong bài viết này. Hy vọng, bạn có thể làm nhiều thứ hơn khi đọc xong bài viết này
Sau khi nhiều người dùng phàn nàn rằng họ cảm thấy hệ thống đặt hàng quá chậm trên hệ thống thì tôi có thể chuẩn bị thất nghiệp và tôi đã lật ngược thế cờ như thế nào?
Nodejs Series đã qua được 3 bài viết, và bài viết này giải đáp thắc mắc vì sao Nodejs có thể cải tiến hiệu suất cao đến như vậy. Đọc từ từ sẽ rõ.
Khái niệm cần hiểu trong lập trình javascript - Cho dù bạn đang ở level nào của một developer thì những khái nhiệm cơ bản cũng đóng vai trò quan trọng. Cho nên dễ hiểu tại sao, những nhà developer js luôn có những hướng dẫn cơ bản về những khái niệm cơ bản.
Moment.js is a lightweight JavaScript date library for parsing, validating, manipulating, and formatting dates. Moment.js tutorial shows how to work with date and time in JavaScript with Moment.js module.
Load balancer là gì? Load balancer mang đến lợi ích gì? Cụm từ này quá nổi tiếng đến mức những bạn năm nhất cũng đã từng nghe tới chứ đừng nói những lập trình viện như bạn. Tôi biết không ít những bạn trong công ty tôi vẫn không biết chút gì về Load balancer (LB) cho nên hy vọng rằng qua bài viết này những bạn chưa hề biết thì bây giờ mạnh dạn tự tin trả lời là biết, sau khi đọc bài viết này.