API endpoint: Find a User by Criteria - API endpoint: Tìm người dùng theo tiêu chí cho XenForo 2 1.0.1
Thêm endpoint mới vào bộ điều khiển Users API cho phép developer truy xuất người dùng dựa trên một trong ba tiêu chí:
Ví dụ: nếu cả ba tham số được chỉ định và kết quả trùng khớp user_id, điều đó sẽ được trả về bất kể tham số email hoặc tên người dùng. Tương tự, nếu không tìm thấy user_id, nhưng lại tìm thấy được địa chỉ email, thì người dùng có địa chỉ email đó sẽ được trả về bất kể tên người dùng được chỉ định.
Endpoint có thể được tìm thấy tại:
Addon này được tạo ra để giúp tích hợp các diễn đàn của mình với hệ thống trợ giúp (HelpSpot). Khi xem các yêu cầu trợ giúp trong HelpSpot, bạn có thể thực hiện "Tra cứu trực tiếp" cho hệ thống bên ngoài để truy xuất dữ liệu người dùng để hiển thị và lưu trữ trong hệ thống trợ giúp.
Đôi khi bạn có user_id, đôi khi bạn có một địa chỉ email và đôi khi bạn có tên người dùng - vì vậy hệ thống chỉ gửi những gì nó có cho API XenForo và sau đó trả về người dùng tìm thấy. Lưu ý rằng có một thành phần trung gian chuyển yêu cầu HelpSpot thành lệnh gọi API XenForo, sau đó phiên dịch trả về dữ liệu người dùng từ XenForo sang định dạng XML theo yêu cầu của HelpSpot.
Yêu cầu:
Bạn sẽ cần một key API với phạm vi
Phản ứng:
Có hai yếu tố hàng đầu trong dữ liệu phản hồi được trả về:
cURL
Guzzle
Laravel 7
Chúc các bạn thành công.
Thêm endpoint mới vào bộ điều khiển Users API cho phép developer truy xuất người dùng dựa trên một trong ba tiêu chí:
- user_id
- username
Ví dụ: nếu cả ba tham số được chỉ định và kết quả trùng khớp user_id, điều đó sẽ được trả về bất kể tham số email hoặc tên người dùng. Tương tự, nếu không tìm thấy user_id, nhưng lại tìm thấy được địa chỉ email, thì người dùng có địa chỉ email đó sẽ được trả về bất kể tên người dùng được chỉ định.
Endpoint có thể được tìm thấy tại:
GET users/find-criteria
Addon này được tạo ra để giúp tích hợp các diễn đàn của mình với hệ thống trợ giúp (HelpSpot). Khi xem các yêu cầu trợ giúp trong HelpSpot, bạn có thể thực hiện "Tra cứu trực tiếp" cho hệ thống bên ngoài để truy xuất dữ liệu người dùng để hiển thị và lưu trữ trong hệ thống trợ giúp.
Yêu cầu:
Bạn sẽ cần một key API với phạm vi
user:read
và nếu bạn muốn truy xuất dữ liệu địa chỉ email trong phản hồi, API người dùng cũng sẽ cần đặc quyền của Administrator với quyền Manage users and moderators
.Phản ứng:
Có hai yếu tố hàng đầu trong dữ liệu phản hồi được trả về:
user
- chứa toàn bộ hồ sơ người dùng theo loại dữ liệu Người dùngurl
- danh sách các URL để biết thêm thông tin về người dùng này:api
- một liên kết đến lệnh gọi API để lấy thông tin về người dùng này trực tiếp dựa trên id người dùng (từ API lõi)public
- một liên kết đến hồ sơ XenForo công khai cho người dùng nàyadmin
- một liên kết đến hồ sơ quản trị XenForo cho người dùng này
cURL
PHP:
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "http://xenforo21.local/api/users/find-criteria?user_id=2&[email protected]&username=test%20user",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_TIMEOUT => 0,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"XF-Api-Key: your-api-key",
],
]);
$response = curl_exec($curl);
curl_close($curl);
$data = json_decode($response, true);
var_dump($data);
Guzzle
PHP:
$client = new \GuzzleHttp\Client([
'base_uri' => 'http://xenforo21.local/api/'
]);
$response = $client->request('GET', 'users/find-criteria', [
'query' => [
'user_id' => 2,
'email' => '[email protected]',
'username' => 'test user'
],
'http_errors' => false,
'headers' => [
'XF-Api-Key' => 'your-api-key'
]
]);
$data = \GuzzleHttp\json_decode($response->getBody()->getContents(), true);
var_dump($data);
Laravel 7
PHP:
$response = \Illuminate\Support\Facades\Http::withHeaders([
'XF-Api-Key' => 'your-api-key'
])->get('http://xenforo21.local/api/users/find-criteria', [
'user_id' => 2,
'email' => '[email protected]',
'username' => 'test user'
]);
$data = $response->json();
var_dump($data);
Chúc các bạn thành công.
Nguồn: xenforo.com
Đính kèm
Bài viết liên quan
Được quan tâm
Bài viết mới