TopDev
Sort by
1 results
HIGHLIGHT COMPANY

Company information

job-imageCÔNG TY TNHH FRIENDIFY AI
Thành phố Hồ Chí Minh 25-99

Related posts

Marketplace Illustration
Giới thiệu về RedisJSON - Mảnh ghép hoàn hảo cho RediSearch

Bài viết được sự cho phép của tác giả Tống Xuân Hoài Vấn đề Tôi đã có một bài viết về vấn đề blog của tôi sử dụng RediSearch làm cơ sở dữ liệu chính ở RediSearch là gì? Estacks đang sử dụng RediSearch làm cơ sở dữ liệu!, bên cạnh đó là lý do tôi dùng RediSearch vì tính năng Tìm kiếm fulltext trong RediSearch mà tôi luôn muốn tìm kiếm của blog trở nên mạnh mẽ và hữu ích hơn cho bạn đọc. Cho đến hiện tại mọi thứ vẫn đang hoạt động rất tốt, chỉ có một điều Redis không có kiểu dữ liệu JSON trong khi tôi lại muốn thao tác với dữ liệu dạng JSON một cách thân thiện nhất. Do đó trong quá trình tìm hiểu tôi phát hiện ra Redis cung cấp một module có tên là RedisJSON đã giúp tôi làm được điều đó. Nếu như bạn đang dùng Redis hay RediSearch mà muốn thao tác với dữ liệu JSON thì đây quả là [...]

Marketplace Illustration
Giới thiệu về JSON Binding trong Jakarta EE

Bài viết được sự cho phép của tác giả Nguyễn Hữu Khanh JSON Binding là một specification của Jakarta EE về convert qua lại giữa JSON data và Java object, tương tự như thư viện Jackson mà mình đã giới thiệu với các bạn. Trong bài viết này, chúng ta sẽ cùng nhau tìm hiểu về JSON Binding và cách sử dụng nó với một implementation của nó là Eclipse Yasson các bạn nhé! Đầu tiên, mình sẽ tạo mới một Maven project để làm ví dụ: [irp posts="14451" name="JSON-LD là gì ? Tổng quan về JSON-LD cho người mới"] Eclipse Yasson dependency như sau: <dependency> <groupId>org.eclipse</groupId> <artifactId>yasson</artifactId> <version>3.0.2</version> </dependency> Để làm ví dụ, mình sẽ định nghĩa một class Student chứa thông tin sinh viên như sau: package com.huongdanjava.jakartaee; public record Student(String name, int age) { } Mình sẽ khởi tạo đối tượng của class Student trước: Student student = new Student("Khanh", 35); Để convert đối tượng Student này qua chuỗi JSON, các bạn cần khởi tạo đối [...]

Marketplace Illustration
0x0B và JSON parser

Bài viết được sự cho phép của tác giả Huy Trần Vào một ngày đẹp trời, một mail rì pọt từ user gửi đến, nội dung như này: Tui đang dùng app ABC của mấy người. Ở màn hình order, tui copy một đoạn text từ Powerpoint ra và dán vào mục Order Message. Xong tui bấm nút tiếp tục, thì app ngừng hoạt động, màn hình chỉ hiện lên một nửa, đây là nội dung lời nhắn: "Happy birthday, Dave! We got a gift for you! Hope you like it, Mom and Dad." Nhìn từ bên ngoài, lời nhắn kia trông không có gì khả nghi, nhưng nếu nhìn kĩ bằng cách bật chế độ hiển thị các kí tự ẩn (hidden characters) trên editor (với Emacs thì M-x whitespace-mode, với các editor khác thì các bạn tự Google đi), thì ta có thể thấy ngay một vài kí tự lạ xuất hiện: "Happy birthday, Dave!^K^K We got a gift for you!^K^K Hope you like it,^K Mom and Dad." Để chi tiết hơn, ta có thể dù [...]

Marketplace Illustration
Giới thiệu Json Web Token (JWT)

Bài viết được sự cho phép của tác giả Giang Phan Authentication là phần không thể thiếu trong bất kỳ hệ thống nào. Phương pháp authentication đơn giản và hay được sử dụng trong các ứng dụng web đó là user gửi thông tin username và password lên server. Sau khi server chứng thực thành công sẽ tạo ra một chuỗi session_id và lưu vào session hay database ở phía server. Sau đó, gửi session_id này về client và được client lưu trên cookie. Nhưng với các ứng dụng trên mobile và các ứng dụng web SPA (Single Page Application) thì cần có cơ chế authentication tốt hơn khi mà chúng ta phải thiết kế các RESTful api (stateless) thì server không thể đảm nhiệm việc lưu trạng thái phiên làm việc của user. Một trong những phương pháp tốt để giải quyết vấn đề này là sử dụng JSON Web Token (JWT). JSON Web Token (JWT) là gì? JSON Web Token (JWT) là 1 tiêu chuẩn mở (RFC 7519), định nghĩa cách thức truyền tin an toàn giữa [...]

Marketplace Illustration
Định nghĩa JSON Web Key Set cho Authorization Server sử dụng Spring Authorization Server và tập tin PKCS12 key store

Bài viết được sự cho phép của tác giả Nguyễn Hữu Khanh JSON Web Key Set là một tập hợp các public key JSON Web Key được cung cấp bởi Authorization Server, để cho Resource Server có thể verify access token được gửi bởi Client Application. Trong bài viết về Hiện thực OAuth Authorization Server sử dụng Spring Authorization Server, mình đã hướng dẫn các bạn cách định nghĩa JSON Web Key này sử dụng code. Thế nhưng cho các ứng dụng chạy trên production, vì vấn đề bảo mật, thông tin JSON Web Key thường sẽ được một bên khác quản lý, có thể là IT team. Họ sẽ generate một tập tin keystore, nhiệm vụ của chúng ta là sử dụng tập tin keystore này để định nghĩa JSON Web Key Set. Trong bài viết này, mình sẽ hướng dẫn các bạn cách định nghĩa JSON Web Key Set cho Authorization Server sử dụng Spring Authorization Server và tập tin PKCS12 key store các bạn nhé! [irp posts="31494" name="Cách tạo REST API với JSON Server"] [irp posts="34092" name="Ghi chú file package. [...]

Marketplace Illustration
Chuyển đổi JSON qua CSV sử dụng thư viện Jackson

Bài viết được sự cho phép của tác giả Nguyễn Hữu Khanh Thư viện Jackson giúp cho chúng ta có thể chuyển đổi data dưới dạng JSON sang các định dạng data khác nhau và ngược lại. Trong bài viết này, mình hướng dẫn các bạn cách chuyển đổi data từ JSON sang CSV như thế nào các bạn nhé! [irp posts="31494" name="Cách tạo REST API với JSON Server"] [irp posts="34092" name="Ghi chú file package.json của node module"] Xem thêm các việc làm JSON hấp dẫn trên TopDev Đầu tiên, mình sẽ tạo mới một Maven project: với Jackson Dataformat CSV dependency như sau: <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-csv</artifactId> <version>2.13.0</version> </dependency> Để làm ví dụ, mình sẽ chuyển đổi chuỗi JSON sau sang tập tin CSV: { "name" : "Khanh", "code" : 99, "date" : "04-07-2017", "gotMarried": true } Để bắt đầu, mình sẽ tạo mới một Application class với main() method như sau: package com.huongdanjava.jackson; public class Application { public static void main(String[] args) { } } Đầu tiên, các bạ [...]

Marketplace Illustration
Ghi chú file package.json của node module

Bài viết được sự cho phép của tác giả Lưu Bình An Tạo file package.json (đồng thời khởi tạo một npm package) npm init // dùng các thiết đặt mặc định npm init --yes Các property chính cần nắm trong file package.json Tìm việc Json lương cao tại đây name: tên project "name": "my-blog-backend", version: version hiện tại của project "version": "1.0.0", main: đường dẫn trỏ đến file entry point chính của project "main": "server.js", scripts: chứa các command shortcut "scripts": { "start": "npx babel-node src/server.js", "dev": "npx babel-node src/server.js", "test": "echo \"Error: no test specified\" && exit 1", "lint": "eslint ./server" }, bugs: địa chỉ để báo bug và email nhận thông báo "bugs": { "url": "https://github.com/owner/project/issues", "email": "project@hostname.com" }, private: true nếu bạn không muốn publish, như đang làm project công ty thì không ai để false "private": true keywords: hỗ trợ các công cụ search tìm theo từ khóa "keywords": [ "node", "vue", ], dependencies: những thư viện nào đang phụ thuộc "dependencies": { "express": "^4.17.1" }, devDependencies: external dependencies trong lúc dev, không cần nếu bạn chỉ lấy production build. "devDependencies": { "@babel/cli": "^7.12.8", "@babel/core": "^7.12.9", "@babel/node": "^7.12.6", "@ [...]

Marketplace Illustration
Cách tạo REST API với JSON Server

Bài viết được sự cho phép của BBT Tạp chí Lập trình Một công việc khá phổ biến đối với front-end developer là phải giả lập một backend REST service để nhận JSON data cung cấp cho ứng dụng front-end, và đảm bảo nó hoạt động như mong đợi trong khi đang chờ phía backend hoàn thiện service. [irp posts="19157" name="3 bước tối ưu hiệu năng React App bằng các API mới của React"] [irp posts="2580" name="10+ tools và extensions tuyệt vời cho GraphQL APIs"] Bạn vẫn có thể cài đặt backend server đầy đủ, bằng cách sử dụng Node.js, Express và MongoDB, tuy nhiên việc này tốn khá nhiều thời gian và phức tạp. Trong khi đó JSON Server lại là một giải pháp khá hoàn thiện cho yêu cầu nhanh và đơn giản với đầy đủ các thao tác CRUD (Create Read Update Delete). Vì vậy bài viết này sẽ hướng dẫn bạn cách cài đặt JSON server và publish một sample REST API. Chuẩn bị Cài node cho máy tính của bạn bằng cá [...]

Marketplace Illustration
Ứng dụng JSON.parse để cải thiện tốc độ?

Với các ứng dụng web ngày nay, không khó bắt gặp việc sử dụng object như một nơi lưu trữ state và các dạng dữ liệu cần thiết khác cho ứng dụng. Cụ thể nhất chúng ta thường thấy trong store của Redux. const data = { foo: 42, bar: 1337 }; // 🐌 Trong thực tế nó sẽ không đơn giản như ví dụ ở trên, mà cấu trúc nếu không chồng chéo thì cũng rất lớn vì phải gánh vác toàn bộ state của ứng dụng. Nếu nó lại dữ liệu cần thiết trong lúc khởi tạo ứng dụng lần đầu tiên. Việc này sẽ nằm trong render critical path của trình duyệt, đồng nghĩa với việc user không thấy gì hết cho đến khi dữ liệu này được load, parse, compile, execute bởi Javascript engine bên dưới. Để khắc phục việc này một trong những cách làm là dùng server side rendering, chúng ta chỉ quăng cái HTML đã chứa toàn bộ kết quả của quá trì [...]

Marketplace Illustration
JSON-LD là gì ? Tổng quan về JSON-LD cho người mới

Bài viết được sự cho phép của tác giả Chu Xuan Thang Mở đầu Ok, trước khi bắt đầu, bạn cần có một chút kiến thức về SEO để hiểu những thứ bên dưới. Trước hết, có nhiều cách để cho Google và các search engines khác biết thông tin về trang web của bạn. Theo định kì các search engines sẽ ghé thăm trang web của bạn, nó sẽ chạy từ page này qua page khác để đọc dữ liệu, tìm hiểu xem trang web của bạn là gì, có những content gì, tiêu đề của content, nội dung của content, nếu là trang web bán hàng, nó sẽ xem sản phẩm tên gì, thuộc loại sản phẩm nào, giá bao nhiêu, sản xuất ở đâu,...v.v. Việc này có thể gây mất nhiều thời gian và có thể search engines đọc sai/không đủ thông tin về trang web của bạn, khiến search engines đánh độ ưu tiên trang web của bạn sai. Vậy thì thay vì phải mất thời gian đọc qua lần lượt từ đầ [...]

Marketplace Illustration
JSON Web Token là gì?

Token-based authentication là gì? Token-based authentication là phương thức xác thực bằng chuỗi má hóa. Một hệ thống sử dụng Token-based authentication cho phép người dùng nhập user/password để nhận về 1 chuỗi token. Chuỗi Token này được sử dụng để "xác minh" quyền truy cập vào tài nguyên mà không cần phải cung cấp lại username/password nữa. Tiếp theo, chúng ta sẽ tìm hiểu về phương pháp sử dụng Token-based authentication bằng JWT (Json Web Token). JWT - JSON Web Token là gì? JSON Web Token là một chuỗi mã hóa mà nguồn gốc ban đầu là một chuỗi JSON. Chuỗi thông tin dạng JSON bằng phương pháp mã hóa nào đó, nó trở thành 1 chuỗi ký tự lộn xộn nhìn vào sẽ rất khó hiểu. >>> Xem thêm JSON là gì? Định nghĩa theo tiêu chuẩn: JSON Web Token (JWT) là 1 tiêu chuẩn mở (RFC 7519) định nghĩa cách thức truyền tin an toàn giữa các thành viên bằng 1 đối tượng JSON. Thông tin này có thể được [...]

Marketplace Illustration
Hiểu rõ về JSON là gì? Cách lấy dữ liệu từ JSON

JSON là gì? JSON là viết tắt của JavaScript Object Notation, là một kiểu định dạng dữ liệu tuân theo một quy luật nhất định mà hầu hết các ngôn ngữ lập trình hiện nay đều có thể đọc được. JSON là một tiêu chuẩn mở để trao đổi dữ liệu trên web. Định nghĩa Định dạng JSON sử dụng các cặp key - value để dữ liệu sử dụng. Nó hỗ trợ các cấu trúc dữ liệu như đối tượng và mảng. Ví dụ một tập tin có tên topdev_info.json với nội dung như ở dưới đây sử dụng format kiểu JSON để lưu trữ thông tin: { "name" : "TopDev", "title" : "Việc làm IT cho Top Developers", "description" : "là hệ sinh thái bao gồm cộng đồng các Top Developers." } Ta có thể thấy cú pháp của JSON có 2 phần đó là key và value: Chuỗi JSON được bao lại bởi dấu ngoặc nhọn {} Các key, valuecủa JSON bắt buộc phải đặt trong dấu nháy kép {"}, nếu bạn đặt nó trong dấu nháy đơn thì đây không phải [...]

Marketplace Illustration
[Python cơ bản thường dùng trong công việc] Phần 7 : Xử lý file JSON

JSON là gì? JSON là một trong những định dạng file trao đổi dữ liệu thông dụng nhất hiện nay. Với kiến trúc đơn giản và tương đồng với cấu trúc của Python nên việc thao tác JSON trên Python rất dễ hiểu. Việc làm python không cần kinh nghiệm 7.1. Load file từ Internet Thông thường dữ liệu JSON được lấy từ nguồn khác (như file, internet..) nên chương này sẽ bắt đầu bằng cách hướng dẫn download một file JSON từ Internet và sau đó mới parsing nội dung JSON download. Sử dụng module urllib2 để download file và module json để encode/decode JSON data. Ví dụ: import urllib2 import json response = urllib2.urlopen('https://api.github.com/ users/voduytuan/repos') data = json.load(response) print data Ví dụ trên sẽ truy vấn đường dẫn https://api.github.com/users/voduytuan/repos để lấy danh sách Repository trên Github của mình dưới định dạng JSON. 7.2. Parsing JSON Data Nếu như bạn đã có JSON data dưới dạng chuỗi, muốn parsing chuỗi này thành Data thì sử dụng như cách dưới đây: import json mystring = '{" [...]

Marketplace Illustration
JSON Web Token (JWT) là gì ?

Jwt là gì? Trong bài viết này mình cùng tìm hiểu khái niệm JWT là gì , trước tiên hãy xem giải thích theo lý thuyết được định nghĩa bởi RFC 7519 Jwt là gì? JWT là một phương tiện đại diện cho các yêu cầu chuyển giao giữa hai bên Client - Server , các thông tin trong chuỗi JWT được định dạng bằng JSON . Trong đó chuỗi Token phải có 3 phần là header , phần payload và phần signature được ngăn bằng dấu "." [caption id="attachment_11517" align="aligncenter" width="700"] Credit: Toptal[/caption] [irp posts="4025" name="Tại sao phải sử dụng JSON Web Token (JWT) để bảo mật API"] [irp posts="4199" name="API Authentication trong Laravel-Vue SPA sử dụng Jwt-auth"] Vậy theo lý thuyết trên thì mình sẽ có một chuỗi Token như sau: header.payload.signature Cấu trúc của JSON Web Token: Như ở trên đã nói JSON Web Token bao gồm 3 phần, được ngăn cách nhau bởi dấu chấm (.): Header Payload Signature (chữ ký) Header Phần header sẽ chứa kiểu dữ liệu , và thuật toán sử dụng để mã hóa ra chuỗi JWT { " [...]