web api security tập cuối
Phần cuối của series mình sẽ sử dụng C# để gọi authorize api. Có nhiều cách để gọi web api, từ HttpWebRequest tới WebClient. Trong .NET 4.5 bạn có thể dùng HttpClient để gọi api.
Http client
Tạo 1 đối tượng HttpClient để sử dụng các phương thức của api. Khuôn mẫu như sau:
Với mỗi phương thức, mình cho thêm 1 tham số optional là token. Nếu token được truyền vào, ta sẽ sử dụng để authorize cho request.
Mình sẽ xử lý phương thức get (get all) như sau:
Đơn giản. Nếu token được truyền vào, mình sẽ add authentication cho header tương tự như phần 2. Gửi request, nếu succeed thì đọc kết quả và trả về.
Tương tự đối với phương thức post, lần này chú ý hơn 1 chút
Ở đây chỉ là ví dụ cho nên mình sử dụng hardcode, vì khi login, dữ liệu sẽ ở dạng query string a=1&b=2&c=3 chứ không phải json object, cho nên mình chỉ sử dụng PostAsync
thay cho PostAsJsonAsync
như dòng comment phía dưới.
Bạn cũng có thể xây dựng các phương thức put/delete tương tự.
gọi api
Các bước gọi cũng tương tự như ở phần 2: login, lấy token trả về và đưa vào phương thức get để authorize. Như đã xây dựng các phương thức ở trên, nếu truyền token vào thì sẽ add authentication header cho request
Và chạy thử
Ngon!!!
Kết
Vậy là xong series web api security. Tưởng chừng như khó khăn nhưng mọi việc thật đơn giản. Thế này thì bố con thằng nào hack được, muahaha :))
Comments
Post a Comment