Ping Uç Noktaları
Actions API için sağlık izleme ve bağlantı testi.
Genel Bakış
Ping uç noktaları, mindzieAPI ile bağlantıyı test etmek ve kimlik doğrulamayı doğrulamak için basit bir yol sağlar. Bu uç noktalar, sistem sağlığını izlemek ve bağlantı sorunlarını gidermek için gereklidir.
Yetkisiz Ping
GET /api/{tenantId}/{projectId}/action/unauthorized-ping
Kimlik doğrulama gerektirmeyen temel bağlantı testi. API'nin erişilebilir olduğunu doğrulamak için kullanın.
İstek
GET https://your-mindzie-instance.com/api/{tenantId}/{projectId}/action/unauthorized-ping
Yol Parametreleri
| Parametre | Tür | Gerekli | Açıklama |
|---|---|---|---|
tenantId |
GUID | Evet | Kiracı tanımlayıcınız |
projectId |
GUID | Evet | Proje tanımlayıcınız |
Yanıt
HTTP/1.1 200 OK
Content-Type: text/plain
Ping Successful
Kullanım Senaryoları
- Temel bağlantı testi
- Yük dengeleyici sağlık kontrolleri
- Ağ sorun giderme
- Hizmet kullanılabilirliği izleme
Kimlik Doğrulamalı Ping
GET /api/{tenantId}/{projectId}/action/ping
Kimlik bilgilerini doğrulayan ve belirtilen kiracı ile projeye erişimi kontrol eden kimlik doğrulamalı bağlantı testi.
İstek
GET https://your-mindzie-instance.com/api/{tenantId}/{projectId}/action/ping
Authorization: Bearer {your-access-token}
Yol Parametreleri
| Parametre | Tür | Gerekli | Açıklama |
|---|---|---|---|
tenantId |
GUID | Evet | Kiracı tanımlayıcınız |
projectId |
GUID | Evet | Proje tanımlayıcınız |
Yanıt
Başarılı (200 OK):
HTTP/1.1 200 OK
Content-Type: text/plain
Ping Successful (tenant id: 12345678-1234-1234-1234-123456789012)
Yetkisiz (401):
HTTP/1.1 401 Unauthorized
Content-Type: text/plain
{authorization hatasını açıklayan hata mesajı}
Kullanım Senaryoları
- Kimlik doğrulama doğrulaması
- İzin kontrolü
- Token geçerliliği testi
- Kiracı/proje erişim doğrulaması
Uygulama Örnekleri
cURL
# Yetkisiz ping
curl -X GET "https://your-mindzie-instance.com/api/12345678-1234-1234-1234-123456789012/87654321-4321-4321-4321-210987654321/action/unauthorized-ping"
# Kimlik doğrulamalı ping
curl -X GET "https://your-mindzie-instance.com/api/12345678-1234-1234-1234-123456789012/87654321-4321-4321-4321-210987654321/action/ping" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
JavaScript/Node.js
const TENANT_ID = '12345678-1234-1234-1234-123456789012';
const PROJECT_ID = '87654321-4321-4321-4321-210987654321';
const BASE_URL = 'https://your-mindzie-instance.com';
// Yetkisiz ping
const unauthorizedPing = async () => {
const response = await fetch(
`${BASE_URL}/api/${TENANT_ID}/${PROJECT_ID}/action/unauthorized-ping`
);
const text = await response.text();
console.log('Yetkisiz ping:', text);
return response.ok;
};
// Kimlik doğrulamalı ping
const authenticatedPing = async (token) => {
const response = await fetch(
`${BASE_URL}/api/${TENANT_ID}/${PROJECT_ID}/action/ping`,
{
headers: {
'Authorization': `Bearer ${token}`
}
}
);
if (response.ok) {
const text = await response.text();
console.log('Kimlik doğrulamalı ping:', text);
return true;
} else {
console.error('Kimlik doğrulama başarısız:', response.status);
return false;
}
};
Python
import requests
TENANT_ID = '12345678-1234-1234-1234-123456789012'
PROJECT_ID = '87654321-4321-4321-4321-210987654321'
BASE_URL = 'https://your-mindzie-instance.com'
def unauthorized_ping():
"""Kimlik doğrulama olmadan temel bağlantı testi."""
url = f'{BASE_URL}/api/{TENANT_ID}/{PROJECT_ID}/action/unauthorized-ping'
response = requests.get(url)
print(f'Yetkisiz ping: {response.text}')
return response.ok
def authenticated_ping(token):
"""Kimlik doğrulamalı bağlantı testi."""
url = f'{BASE_URL}/api/{TENANT_ID}/{PROJECT_ID}/action/ping'
headers = {
'Authorization': f'Bearer {token}'
}
response = requests.get(url, headers=headers)
if response.ok:
print(f'Kimlik doğrulamalı ping: {response.text}')
return True
else:
print(f'Kimlik doğrulama başarısız: {response.status_code}')
return False
C#
using System.Net.Http;
using System.Threading.Tasks;
public class ActionApiClient
{
private readonly HttpClient _httpClient;
private readonly string _baseUrl;
private readonly Guid _tenantId;
private readonly Guid _projectId;
public ActionApiClient(string baseUrl, Guid tenantId, Guid projectId, string accessToken)
{
_baseUrl = baseUrl;
_tenantId = tenantId;
_projectId = projectId;
_httpClient = new HttpClient();
_httpClient.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", accessToken);
}
public async Task<bool> UnauthorizedPingAsync()
{
var url = $"{_baseUrl}/api/{_tenantId}/{_projectId}/action/unauthorized-ping";
var response = await _httpClient.GetAsync(url);
var content = await response.Content.ReadAsStringAsync();
Console.WriteLine($"Yetkisiz ping: {content}");
return response.IsSuccessStatusCode;
}
public async Task<bool> AuthenticatedPingAsync()
{
var url = $"{_baseUrl}/api/{_tenantId}/{_projectId}/action/ping";
var response = await _httpClient.GetAsync(url);
var content = await response.Content.ReadAsStringAsync();
if (response.IsSuccessStatusCode)
{
Console.WriteLine($"Kimlik doğrulamalı ping: {content}");
return true;
}
else
{
Console.WriteLine($"Kimlik doğrulama başarısız: {response.StatusCode}");
return false;
}
}
}
En İyi Uygulamalar
- Sağlık Kontrolleri: Otomatik sağlık izleme sistemleri için yetkisiz ping kullanın
- Ön Kontrol Doğrulaması: Eylemleri yürütmeden önce kimlik bilgilerini doğrulamak için kimlik doğrulamalı ping çağırın
- Hata Yönetimi: Ağ zaman aşımı ve kimlik doğrulama hatalarını her zaman nazikçe yönetin
- İzleme: Hizmet kesintilerini erken tespit etmek için ping başarısızlıklarına dayalı otomatik uyarılar kurun