CÔNG NGHỆ THÔNG TIN >> BÀI VIẾT CHỌN LỌC

Gọi Web API sử dụng Ajax JQuery

Đăng lúc: 09:41 AM - 08/12/2022 bởi Charles Chung - 1426

Trong bài viết này tôi sẽ hướng dẫn các bạn các GET, POST, PUT, DELETE dữ liệu lên Web API sử dụng Ajax JQuery và lưu vào database, trong đó có cả post dữ liệu dạng MultiplePart và cấu hình CORS trên Web API.

1. Cấu hình CORS trên ASP.NET Core Web API 3.1

  • Trong tệp Startup.cs tìm phương thức ConfigureServices bổ sung dòng cấu hình sau

 services.AddCors(o => {
       o.AddPolicy("AllowOrigin", p =>
       {
           p.AllowAnyOrigin()

.AllowAnyHeader()

.AllowAnyMethod();
});
            });

  • Nếu cần cấu hình rõ từng thông số thì dùng lệnh bên dưới kết hợp các thông số cho phép

 p.WithOrigins("https://hanam88.com")

.WithMethods("GET","POST","DELETE")

.WithHeaders("Authorize");

  • Vẫn trong tệp Startup.cs tìm phương thức Configure bổ sung thêm dòng

 app.UseCors("AllowOrigin");

  • Trong các controller api bổ sung thuộc tính sau [EnableCors("AllowOrigin")] ví dụ cho ProductController

[EnableCors("AllowOrigin")] 

public class ProductsController : ControllerBase

2. Lưu ý khi POST data lên Web API

  • Khi post dữ liệu FormData lên Web API để web-security của trình duyệt bỏ qua việc xử lý dữ liệu và kiểu nội dung, bạn cần thiết lập thông số processData:false, contentType:false trong lệnh ajax. Ví dụ

 $.ajax({

           url:domain+"/bkap/san-pham/them-voi-image",

           type:'POST',

           data:fd,

           processData:false,

           contentType:false,

           success:function(data){

               if(typeof(data)=='string')

              {

                  alert(data);

              }else{

                 //in thông tin sản phẩm...

                 alert("Đã thêm thành công sản phẩm có tên: "+ data.productName);

                 $('#modalAdd').modal('hide');

                 window.location.reload();

             }

          },

         error:function(msg)

         {

           alert(msg);

         }

       });

3. Video demo

Link tải source code (Google Drive) pass hỏi thầy Charles Chung

thay lời cảm ơn!

QUẢNG CÁO - TIẾP THỊ