Tài liệu

Phiên bản API 1.1

Tài liệu này giải thích cách đăng ký, cấu hình và phát triển ứng dụng của bạn để bạn có thể sử dụng thành công các API của chúng tôi

Tạo ứng dụng

Để ứng dụng của bạn có thể truy cập các API của chúng tôi, bạn phải đăng ký ứng dụng của mình bằng Bảng điều khiển ứng dụng. Đăng ký tạo ra một ID ứng dụng cho chúng tôi biết bạn là ai, giúp chúng tôi phân biệt ứng dụng của bạn với các ứng dụng khác.

  1. Bạn sẽ cần tạo một ứng dụng mới Tạo ứng dụng mới
  2. Sau khi bạn tạo ứng dụng, bạn sẽ nhận được app_idapp_secret
Đăng nhập với

Hệ thống Đăng nhập với là một cách nhanh chóng và tiện lợi để mọi người tạo tài khoản và đăng nhập vào ứng dụng của bạn. Hệ thống Đăng nhập với của chúng tôi cho phép hai kịch bản, xác thực và yêu cầu quyền truy cập dữ liệu của mọi người. Bạn có thể sử dụng hệ thống Đăng nhập với đơn giản để xác thực hoặc cho cả xác thực và truy cập dữ liệu.

  1. Bắt đầu quy trình đăng nhập OAuth, bạn cần sử dụng một liên kết cho ứng dụng của mình như thế này:
    <a href="https://mangxahoi.com.vn/api/oauth?app_id=YOUR_APP_ID">Log in With Mạng Xã Hội</a>

    Người dùng sẽ được chuyển hướng đến trang Đăng nhập với như thế này

  2. Sau khi người dùng chấp nhận ứng dụng của bạn, người dùng sẽ được chuyển hướng đến URL chuyển hướng ứng dụng của bạn với auth_key như thế này:
    https://mydomain.com/my_redirect_url.php?auth_key=AUTH_KEY
    Điều này auth_key chỉ hợp lệ cho một lần sử dụng, vì vậy một khi bạn đã sử dụng nó, bạn sẽ không thể sử dụng lại và để tạo mã mới, bạn sẽ cần chuyển hướng người dùng đến liên kết đăng nhập với một lần nữa.
Mã thông báo truy cập

Sau khi bạn nhận được sự chấp thuận của người dùng cho cửa sổ Đăng nhập với của ứng dụng và được trả về với auth_key điều đó có nghĩa là bây giờ bạn đã sẵn sàng để truy xuất dữ liệu từ các API của chúng tôi và để bắt đầu quá trình này, bạn sẽ cần phải cấp quyền cho ứng dụng của mình và nhận access_token và bạn có thể làm theo các bước của chúng tôi để tìm hiểu cách nhận nó.

  1. Để nhận mã thông báo truy cập, hãy gửi yêu cầu HTTP GET đến điểm cuối sau như thế này:
    <?php
    
    $app_id = "YOUR_APP_ID"; // your app id
    $app_secret = "YOUR_APP_SECRET"; // your app secret
    $auth_key = $_GET['auth_key']; // the returned auth key from previous step
    
    // Prepare the POST data
    $postData = [
      'app_id' => $app_id,
      'app_secret' => $app_secret,
      'auth_key' => $auth_key
    ];
    
    // Initialize cURL
    $ch = curl_init('https://mangxahoi.com.vn/api/authorize');
    
    // Set cURL options for POST
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postData));
    
    // Execute request
    $response = curl_exec($ch);
    
    // Check for cURL errors
    if (curl_errno($ch)) {
      die('cURL error: ' . curl_error($ch));
    }
    
    curl_close($ch);
    
    // Decode the JSON response
    $json = json_decode($response, true);
    
    // Use the access token if available
    if (!empty($json['access_token'])) {
      $access_token = $json['access_token']; // your access token
    }
    ?>
    
    Điều này access_token chỉ hợp lệ trong 1 giờ, vì vậy một khi nó không hợp lệ, bạn sẽ cần phải tạo một cái mới bằng cách chuyển hướng người dùng đến liên kết đăng nhập với một lần nữa.
API

Sau khi bạn nhận được access_token Bây giờ bạn có thể truy xuất thông tin từ hệ thống của chúng tôi qua các yêu cầu HTTP GET hỗ trợ các tham số sau

Điểm cuối Mô tả
api/get_user_info

lấy thông tin người dùng

Bạn có thể truy xuất thông tin người dùng như thế này

if(!empty($json['access_token'])) {
    $access_token = $json['access_token']; // your access token
    $get = file_get_contents("https://mangxahoi.com.vn/api/get_user_info?access_token=$access_token");
}

Kết quả sẽ là:

{
  "user_info": {
  "user_id": "",
  "user_name": "",
  "user_email": "",
  "user_firstname": "",
  "user_lastname": "",
  "user_gender": "",
  "user_birthdate": "",
  "user_picture": "",
  "user_cover": "",
  "user_registered": "",
  "user_verified": "",
  "user_relationship": "",
  "user_biography": "",
  "user_website": ""
  }
}