Xác minh danh tính Zalo
curl --request POST \
--url https://api.example.com/api/resident/auth/zalo \
--header 'Content-Type: application/json' \
--data '
{
"accessToken": "<string>"
}
'import requests
url = "https://api.example.com/api/resident/auth/zalo"
payload = { "accessToken": "<string>" }
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({accessToken: '<string>'})
};
fetch('https://api.example.com/api/resident/auth/zalo', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/api/resident/auth/zalo",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'accessToken' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/resident/auth/zalo"
payload := strings.NewReader("{\n \"accessToken\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/api/resident/auth/zalo")
.header("Content-Type", "application/json")
.body("{\n \"accessToken\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/resident/auth/zalo")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"accessToken\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"token": "<string>",
"expiresIn": 43200
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}
}Mini App
Xác minh danh tính Zalo
Mini App gửi Zalo access token tới backend để nhận token phiên Taho.
POST
/
api
/
resident
/
auth
/
zalo
Xác minh danh tính Zalo
curl --request POST \
--url https://api.example.com/api/resident/auth/zalo \
--header 'Content-Type: application/json' \
--data '
{
"accessToken": "<string>"
}
'import requests
url = "https://api.example.com/api/resident/auth/zalo"
payload = { "accessToken": "<string>" }
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({accessToken: '<string>'})
};
fetch('https://api.example.com/api/resident/auth/zalo', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/api/resident/auth/zalo",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'accessToken' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/resident/auth/zalo"
payload := strings.NewReader("{\n \"accessToken\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/api/resident/auth/zalo")
.header("Content-Type", "application/json")
.body("{\n \"accessToken\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/resident/auth/zalo")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"accessToken\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"token": "<string>",
"expiresIn": 43200
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}
}Không gửi số điện thoại trong body này. Kết quả xác minh hiện có
verifiedPhone rỗng. Xem cấu hình môi trường cho các biến verifier.
Endpoint có OPTIONS trả 204. Header CORS chỉ được thêm cho origin Zalo được source cho phép; không suy rằng mọi frontend ở origin khác đều được phép gọi từ trình duyệt.Was this page helpful?