Chuyển đến nội dung chính

Bài đăng

Captcha: Tích Hợp Google reCAPTCHA v2 vào ASP.NET

Google reCAPCHA là gì? Google reCAPTCHA là một công cụ được Google phát hành, bằng việc từ chối gửi biểu mẫu, đăng ký tự động và hoạt động ở dạng robot theo cách an toàn, thông minh và hiệu quả nhất. Đồng thời Google reCAPTCHA còn giúp bảo vệ website của bạn bằng cách hạn chế spam tự động trên hệ thống của website.  Đăng ký Google Recaptcha v2 Truy cập website Google reCAPTCHA Admin Console. https://www.google.com/recaptcha/admin/ . Sau đó click Admin Console nhé. Để tạo api key cho website bạn tiến hành như sau nhé: click icon +Thêm tài khoản google reCaptcha. Tiếp theo bạn điền thông tin Label, reCAPTCHA type, domain, Owners,Accept the reCAPTCHA Terms of Service và chọn Submit. Phần domains bạn có thể nhập nhiều domain khác nhau. Lưu thông tin site key và secret key. Sau khi submit , bạn sẽ thầy màn hình thông báo hiển thị site key và secret key như sau: Tích hợp reCAPTCHA v2 vào website Các bước thực hiện:  Tạo Project ASP.NET Thêm key vào appsettings.json Thêm  ReCap...
Các bài đăng gần đây

CAPTCHA là gì?

CAPTCHA là gì? Một CAPTCHA (ˈkæptʃə, đọc giống như "capture") là một loại kiểm thử dạng hỏi đáp được dùng trong máy tính để xác định xem người dùng có phải là con người hay không. "CAPTCHA" là chữ viết tắt của "Completely Automated Public Turing test to tell Computers and Humans Apart" (Phép thử Turing công cộng hoàn toàn tự động để phân biệt máy tính với người), được trường Đại học Carnegie Mellon cố gắng đăng ký thương hiệu nhưng đã bị bác bỏ[2]. Đây là một quá trình một máy tính (máy chủ) yêu cầu một người dùng hoàn tất một kiểm tra đơn giản mà máy tính có thể dễ dàng tạo ra và đánh giá, nhưng không thể tự giải nó được. Vì máy tính không thể giải quyết CAPTCHA, bất kỳ người dùng nào nhập vào lời giải đúng sẽ được xem là con người. Thuật ngữ CAPTCHA được Luis von Ahn, Manuel Blum, Nicholas J. Hopper (tất cả đều thuộc Đại học Carnegie Mellon), và John Langford (khi đó thuộc IBM) đặt ra vào năm 2000. Một loại CAPTCHA phổ biến yêu cầu người dùng phải nhập c...

SkiaSharp: Thư Viện Đồ Họa Mạnh Mẽ Cho .NET

Giới thiệu SkiaSharp là một thư viện đồ họa mã nguồn mở dành cho .NET, được phát triển dựa trên Google Skia. Đây là công cụ vẽ 2D mạnh mẽ, hoạt động trên nhiều nền tảng như Windows, macOS, Linux, Android, iOS, và WebAssembly.  Github: https://github.com/mono/SkiaSharp SkiaSharp cung cấp các bindings đa nền tảng cho .NET Standard 1.3 .NET Core .NET 6 Tizen Android iOS tvOS macOS Mac Catalyst WinUI 3 (Windows App SDK / Uno Platform) Windows Classic Desktop (Windows.Forms / WPF) Web Assembly (WASM) Uno Platform (iOS / macOS / Android / WebAssembly) Tại sao dùng SkiaSharp? Thật ra lý do mình sử dụng SkiaSharp là muốn thay thế System.Drawing cho dự án .NET Framework. Có 1 số thư viện thay thế khác nhưng SkiaSharp vẫn hỗ trợ .NET Framework tới năm 2025 Lý do tiếp theo là dễ dàng mở rộng, hỗ trợ gradient, blur, noise, effects…  Cài đặt SkiaSharp Nếu bạn đang sử dụng .NET Framework 4.8 / .NET 9+ Install-Package SkiaSharp Install-Package SkiaSharp.NativeAssets.Win32 Hiện tại mình vẫn...

Google AI Studio: Tích hợp với C#

Google AI Studio là gì? Google AI Studio là nền tảng giúp lập trình viên khám phá và sử dụng các mô hình AI mạnh mẽ như Gemini thông qua API. Bạn có thể sử dụng AI để xử lý văn bản, hình ảnh và nhiều tác vụ khác. Các Mô Hình Hỗ Trợ Trong Google AI Studio Dưới đây là danh sách các model hiện có của Google AI Studio: models/gemini-1.0-pro-vision-latest models/gemini-pro-vision models/gemini-1.5-pro-001 models/gemini-2.0-flash ... Lưu ý: Danh sách mô hình có thể thay đổi theo thời gian, hãy kiểm tra trang chính thức của Google AI Studio để có thông tin cập nhật nhất. Bạn có thể kiểm tra danh sách model hiện có bằng cách gọi API: https://generativelanguage.googleapis.com/v1/models?key=<your-key> Dưới đây là 1 số model có sẵn models/gemini-1.0-pro-vision-latest models/gemini-pro-vision models/gemini-2.0-flash ... Hướng Dẫn Lấy API Key từ Google AI Studio Truy cập Google AI Studio: https://aistudio.google.com Đăng nhập vào tài khoản Google của bạn. Chọn API Keys và bấm Create API...

REPR (Request-Endpoint-Response) Pattern trong .NET

REPR là gì? REPR (đọc là "Reaper") là một mẫu thiết kế API mới, tập trung vào việc tổ chức các endpoint thay vì sử dụng controller truyền thống. Được giới thiệu bởi Steve "ardalis" Smith, REPR giúp cải thiện cách thức tổ chức các endpoint trong API, giúp chúng dễ dàng hơn trong việc tìm kiếm, điều hướng và chỉnh sửa. Với mẫu thiết kế này, mỗi endpoint sẽ được định nghĩa trong một lớp riêng biệt, mỗi lớp sẽ có một phương thức duy nhất để xử lý các yêu cầu đến. Mục tiêu của REPR là tổ chức ứng dụng theo một kiến trúc tập trung vào endpoint, tạo ra ba thành phần chính: Request Endpoint Response Như vậy, khi nhận một yêu cầu từ người dùng, chúng ta sẽ xử lý yêu cầu đó tại endpoint, sau đó trả về một đối tượng response. Phương pháp này giúp quá trình nhận, xử lý và trả về kết quả trở nên đơn giản và rõ ràng hơn. Tại sao cần phải có REPR? Khi phát triển API theo kiến trúc MVC, chúng ta bắt đầu với những controller nhỏ gọn và đơn giản. Tuy nhiên, khi ứng dụng phát triển, c...

Minimal APIs: Tìm hiểu về Minimal Apis - Part 1

Minimal APIs là một tính năng được giới thiệu trong .NET 6, cho phép nhà phát triển tạo các API gọn gàng hơn, dễ đọc hơn, và nhanh chóng bắt đầu hơn so với các cách tiếp cận ASP.NET Core Web API truyền thống. Hãy cùng tìm hiểu Minimal APIs là gì và tại sao nó lại đáng chú ý. Ưu điểm của Minimal APIs Xây dựng các API nhỏ hoặc đơn giản. Đối với các ứng dụng không có nhiều cấu trúc phức tạp. Khi bạn cần prototyping nhanh chóng Khuyết điểm API đơn giản, không yêu cầu nhiều cấu hình. Xây dựng nhanh chóng mà không cần nhiều tài nguyên. Prototype hoặc đáp ứng các nhu cầu testing. Tạo Project Minimal APIs bằng Visual Studio Mở Visual Studio: Chọn phiên bản Visual Studio hỗ trợ .NET 8 trở lên (ví dụ: Visual Studio 2022). Tạo Project mới: Chọn File → New → Project. Trong cửa sổ Create a new project, tìm kiếm ASP.NET Core Empty. Nhấn Next. Cấu hình dự án: Nhập tên dự án và chọn vị trí lưu. Nhấn Next. Chọn Framework: Ở bước Additional information, chọn .NET 8.0 (Long-term support) hoặc phiên b...

Azure Management API: Products - Part 1.2

Product là gì? Trong Azure API Management (APIM), Product là một khái niệm cốt lõi, giúp tổ chức và quản lý các API được cung cấp bởi một tổ chức. Products không chỉ là một nhóm các API mà còn tích hợp với các tính năng quản lý quyền truy cập, chính sách bảo mật, và các gói dịch vụ, tạo điều kiện thuận lợi cho việc quản lý lifecycle của API một cách hiệu quả. Tham khảo thêm về Subscription key: https://nhatkyhoctap.blogspot.com/2025/01/azure-management-api-huong-dan-tao-api.html Hướng dẫn sử dụng Product trong API Giả sử bạn có 2 APIs https://petstore3.swagger.io/api/v3/openapi.json https://petstore.swagger.io/v2/swagger.json Thêm 2 APIs trên tương ứng với suffix cho swagger UI v3 là petstore, v2 là petstorev2 Trong Azure Portal, tìm kiếm và vào API Management Service của bạn. Trong tab Products, chọn + Add Product. Thêm 2 product Swgger Petstore - OpenAPI 3.0 và Swagger Petstore v2 Trong Azure Portal, bạn chọn Subscription, tạo các Subscriptions tương ứng: dev-subscription: scope ...