Yêu cầu thg 11 7, 2019 3:04 SA 2051 0 7
  • 2051 0 7
+3

Lần đầu tiếp xúc API

Chia sẻ
  • 2051 0 7

chào anh/chị, tình hình là em mới bắt đầu làm một dự án thực tế vàcó liên quan tới web api. mà trước giờ em chỉ nge nói về api mà chưa biết nó áp dụng như thế nào trong dự án cả và củng rất mơ hồ với một fđống lý thuyết trên google.anh chị có kinh nghiệm làm api có thể nói một cách ngắn gọn mà dễ hiểu về api và cách ứng dụng triển khai api trong một dự án đc không ạ.Em cảm ơn

7 CÂU TRẢ LỜI


Đã trả lời thg 11 12, 2019 8:25 SA
Đã được chấp nhận
0

API là một công cụ để giúp các bên giao tiếp với nhau đơn giản hơn. Không chỉ đơn thuần là các URL ở web nó cũng là các hàm của package mà bạn cài đặt. Ví dụ khi bạn sử dụng LARAVEL thì câu lệnh php artsian do_something là một API mà bên LARAVEL cung cấp.

Chia sẻ
Đã trả lời thg 11 7, 2019 3:35 SA
+3

Bạn bắt đầu join vào dự án thực tế, có lẽ bạn đã biết kiến thức về web base + mô hình MVC rồi nhỉ, thế này nhé, ví dụ trong mô hình MVC, khi bạn truy cập vào một url nào đó, sẽ chạy trực tiếp vào controller, thao tác, xử lí logic , get dữ liệu các kiểu các kiểu trong controller rồi trả ra view 1 cục data để bạn thao tác hiển thị đúng không. Web API cũng tương tự vậy, nhưng thay vì bạn là người xử lí logic controller và trả về dữ liệu thì có 1 "thằng" khác thao tác và trả về dữ liệu cho bạn rồi ("thằng khác" ở đây có thể chính là bạn, hoặc đội code backend, hay bất kì website nào có hỗ trợ API). Bằng cách này thì dù bạn làm bên frontend web, hay mobile đều có thể có lấy dữ liệu bằng cách gọi đến url API đó, lấy dữ liệu và trả ra view thôi. 😄

Chia sẻ
Avatar HuyềnNhư @PhanNhuHuyen
thg 11 7, 2019 4:16 SA

hi,bạn có thể ví dụ 1 trường hợp cụ thể đc không 😄

Đã trả lời thg 11 7, 2019 3:21 SA
+2

Định nghĩa về API thì chắc bạn gg cũng sẽ ra rất nhiều rồi, nên mình sẽ nói một cách đơn giản là API sẽ trả về dữ liệu từ server. Đối với các project lớn thì thường tách ra phần api riêng để sau này dễ phát triển vào bảo trì, ngoài ra cũng có thể public api để cung cấp dịch vụ cho người dùng.

Điển hình như fb cũng public khá nhiều api để cho người dùng sử dung, ví dụ như bạn muốn đếm số tin nhắn đã gửi thì sẽ call đến api:

https://graph.facebook.com/me/threads?limit=50&access_token=?

Chia sẻ
Avatar HuyềnNhư @PhanNhuHuyen
thg 11 7, 2019 4:10 SA

hi,tách riêng là sao anh nhỉ

thg 11 7, 2019 4:12 SA

@PhanNhuHuyen tức là nó sẽ tách ra phần api riêng và front-end riêng, ví dụ như viblo thì api dùng laravel, còn front-end thì dùng vuejs

Avatar HuyềnNhư @PhanNhuHuyen
thg 11 7, 2019 4:13 SA

@vuongthai95 dạ e cảm ơn a:D

Đã trả lời thg 11 8, 2019 2:12 SA
+2
  • Api: là một cổng giúp giao tiếp giữa client (app, web, ...) tới server. Client request lên server thông qua api. Server trả dữ liệu, thông báo cho client cũng qua api. Thực chất nó chỉ là một đường link html, và theo đó các http message được truyền đi truyền lại giữa hai bên. Bạn có thể xem thêm tại link: https://viblo.asia/p/tim-hieu-ve-httprequest-va-postman-Eb85ojR4l2G
  • Ứng dụng: tùy theo mô hình dự án bạn đang làm là gì. MVC, MVVM, MVP mà sẽ có cách triển khai tương ứng - trong mỗi mô hình đã triển khai rồi. Cũng tùy vào ngôn ngữ của Client mà gọi lên Server ra sao. Mình code Android nên sử dụng Retrofit, Volley để gọi. Đó, vậy thôi
Chia sẻ
Avatar HuyềnNhư @PhanNhuHuyen
thg 11 8, 2019 3:27 SA

em cảm ơn a đã chia sẽ 😄

thg 11 8, 2019 4:03 SA
Đã trả lời thg 11 7, 2019 3:22 SA
+1

MÌnh hiểu 1 cách đơn giản là : API là tạo các resfull, routes sử lý request từ client trả về chuỗi dạng json, Xml ... WEB API là cung cấp API thông qua các phương thức get, post ... để thao tác và lấy dữ liệu, và nó không có một giao diện cụ thể cũng giống như 1 trang web có backend mà không có frontend ấy, chỉ có các route vd: Route::get('/messages', 'Client\MessagesController@getMessages')

Chia sẻ
Avatar HuyềnNhư @PhanNhuHuyen
thg 11 7, 2019 4:04 SA

vậy mục đích của api là lấy dữ liệu trên server về đúng ko bạn

Avatar Nguyen Thanh @tienthanhjlw
thg 11 7, 2019 10:26 SA

@PhanNhuHuyen đúng rồi mục đích của api tức là để lấy dữ liệu từ phía server

Đã trả lời thg 11 7, 2019 3:31 SA
+1

Hiểu nôm na thì api là phương thức kết nối giữa giao diện và server.

Bạn đọc cái này xem có ích gì k nhé: https://zapier.com/learn/apis/chapter-1-introduction-to-apis/

Cách triển khai thì còn tùy ứng dụng. Nếu bạn làm web thì bạn tìm hiểu keyword "MVC" nhé.

Chia sẻ
Avatar HuyềnNhư @PhanNhuHuyen
thg 11 7, 2019 4:02 SA

oke ,minh cảm ơn ban 😄

Đã trả lời thg 11 8, 2019 3:44 SA
0

Đơn giản thì:

API là 1 cái URL. Khi mình sử dụng thì nó trả về CHO mình 1 chuỗi, 1 mảng, hay 1 kiểu dữ liệu gì đó... Hoặc nó NHẬN từ mình 1 vài dữ liệu

mình có 1 cái biến $A, dùng biến A này hứng những gì API cho mình $A= gọi(API),

sau đó sử dụng biến $A này nhưng mình vẫn làm việc bao lâu nay.

Chia sẻ
Avatar HuyềnNhư @PhanNhuHuyen
thg 11 8, 2019 3:47 SA

URL bên server cung cấp đúng k bạn

Avatar TAMIX @tuananhbfs
thg 11 8, 2019 3:54 SA

@PhanNhuHuyen Ví dụ mình dùng API của facebook, thì URL là do bên facebook tạo ra và cung cấp cho mình, kèm theo hướng dẫn sử dụng.

Còn nếu API truy xuất dữ liệu của công ty mình thì mình phải tự viết API.

Avatar HuyềnNhư @PhanNhuHuyen
thg 11 8, 2019 4:14 SA

nếu mình viết 1 web về thương mại điện tử thì mình cần api ko ạ,và nếu có thì api đó mình tự viết hay có 1 bên nào cung cấp ko ạ

Avatar TAMIX @tuananhbfs
thg 11 8, 2019 4:32 SA

@PhanNhuHuyen Nếu tương lai bạn cần làm thêm Appmobile(android,IOS) hoặc triển khai ra nhiều nền tảng, ứng dụng khác thì cần phải viết API. Và do team code của mình tự viết.

Viết API cũng hao hao như viết site Admin, ko khó khăn lắm đâu.

Avatar HuyềnNhư @PhanNhuHuyen
thg 11 8, 2019 5:00 SA

@tuananhbfs dạ cảm ơn a nhìu

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí