Introducción
Si desea utilizar BioStar 2 New Local API como una API RESTful para su propia personalización u otros fines, simplemente puede consultar este artículo. Este artículo cubrirá el uso más básico de la aplicación de consola BioStar 2 New Local API by C#.
Esta es solo una aplicación de muestra hecha para aquellos que podrían necesitar usar la Nueva API Local de BioStar 2. Es una aplicación de consola de Visual C#.
Funciones
Este artículo cubrirá las siguientes funciones:
- Iniciar sesión
- Buscar usuarios
- Crear usuarios
- Crear usuarios con access group
- Recuperar datos de registro
- Recuperar datos de registro con el pedido por
A través de este artículo, puede aprender a llamar a una función api para buscar a los usuarios que están registrados en su servidor BioStar 2. En la mayoría de los casos, la llamada [GET] no incluye ningún parámetro, ya que simplemente está recuperando la información del servidor. [GET] /users call que recupera la información de usuario de su servidor tampoco tiene ningún parámetro (entrada).
Asegúrese de echar un buen vistazo al código de ejemplo del programa de C# creado para llamadas a la API. Simplemente puede copiar y pegar el código fuente para usar la misma función en su propia integración.
También puede ver cómo llamar a las funciones de la API a través de Postman, que es un programa utilizado para las llamadas a la API RESTful.
Parte 1. Llamada a la API y parámetros
[GET]: /usuarios
[Parámetros]
Nombre | Tipo | *M/O | Explicación | Valor |
|
|
|
|
|
* M – Obligatorio, O – Opcional
Parte 2. Cuerpo de solicitud y modelo de respuesta
[Ejemplo de modelo de valor/parámetros]
|
[Modelo de respuesta]
{ UserCollection Res____UserCollection____6___C{ cadena total ejemplo: 8 @desc: Total de usuarios
filas [{ user_id cadena ejemplo: 2 @desc: ID de usuario
cadena de nombre ejemplo: 11 @desc: Nombre de usuario
cadena de género ejemplo: 0 @desc: Género del usuario
photo_exists booleano ejemplo: falso @desc: Usar la foto de usuario existe
pin_exists booleano ejemplo: falso @desc: El uso del pin de usuario existe
password_exists booleano ejemplo: falso @desc: Usar contraseña de usuario existe
updated_count cadena ejemplo: 1 @desc: Recuento actualizado por el usuario
last_modified cadena ejemplo: 25 @desc: Usuario última modificación
start_datetime cadena ejemplo: 2001-01-01T00:00:00.00Z @desc: Fecha de inicio del usuario
expiry_datetime cadena de datos ejemplo: 2030-12-31T23:59:00.00Z @desc: Fecha de caducidad del usuario
security_level cadena de trabajo ejemplo: 0 @desc: Nivel de seguridad del usuario
display_duration cadena ejemplo: 0 @desc: Duración de la visualización del usuario
display_count cadena ejemplo: 0 @desc: Recuento de visualización de usuarios
booleano heredado ejemplo: falso @desc: Usar heredado por el usuario
user_group_id { cadena id ejemplo: 1010 @desc: ID de grupo de usuarios
cadena de nombre ejemplo: 123 @desc: Nombre de ID de grupo de usuarios
} booleano deshabilitado ejemplo: falso @desc: Usar usuario deshabilitado
booleano caducado ejemplo: falso @desc: Usar usuario caducado
fingerprint_template_count cadena ejemplo: 1 @desc: Recuento de plantillas de huellas dactilares de usuario
face_count cadena ejemplo: 0 @desc: Recuento de rostros de usuario
card_count cadena ejemplo: 0 @desc: Recuento de tarjetas de usuario
access_groups [{ cadena id ejemplo: 3 @desc: Id de grupo de acceso
cadena de nombre ejemplo: como @desc: Nombre del grupo de acceso
}] access_groups_in_user_group [{ cadena id ejemplo: 3 @desc: Acceder a grupos en el identificador de grupo de usuarios
cadena de nombre ejemplo: como @desc: Acceder a grupos en el nombre del grupo de usuarios
}] }] } Respuesta Res____Response___C{ cadena de código ejemplo: 0 desc : Referencia de Response.code: C:\Archivos de programa\BioStar 2(x64)\nginx\html\resources\messages_en.properties(ACB_ERROR_CODE. XXXXX)
cadena de vínculo ejemplo: https://support.supremainc.com/en/support/home desc: URL de enlace
cadena de mensaje ejemplo: Éxito desc: Mensaje
} httpResponseStatus Res____httpResponseStatus___Cinteger ejemplo: 200 desc: Código de estado HTTP
} |
[Respuesta: Fallo]
{ "Respuesta": { "código": "10", "link": "https://support.supremainc.com/en/support/home", "message":"Se requiere inicio de sesión". } } |
[Respuesta: Exitosa]
{ "UserCollection": { "total": "8", "filas": [ { "user_id": "1", "nombre": "Administrador", "género": "0", "correo electrónico": "peterk@suprema.co.kr",... "Respuesta": { "código": "0", "link": "https://support.supremainc.com/en/support/home", "message":"Éxito" } } |
Parte 3. Ejemplo de usuario de búsqueda de consola
[Código fuente del método de búsqueda de usuarios]
static async void ListUsers() { if (sessionID == null) { Console.WriteLine("¡Primero debe iniciar sesión!" ); volver; }
CookieContainer cookieContainer = nuevo CookieContainer();
Controlador HttpClientHandler = nuevo HttpClientHandler(); Controlador. CookieContainer = cookieContainer;
Cliente HttpClient = nuevo HttpClient(controlador);
cliente. DefaultRequestHeaders.Add("bs-session-id", sessionID); cookieContainer.Add(new Uri("https://127.0.0.1"), new Cookie("bs-session-id",sessionID)); HttpResponseMessage httpResponse = cliente. GetAsync("https://127.0.0.1/api/users"). Resultado;
if (httpResponse.IsSuccessStatusCode == true) { string httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); Console.WriteLine(httpResponseBody); obj dinámico = JsonConvert.DeserializeObject(httpResponseBody); Console.WriteLine("**** LISTA DE ID DE USUARIO: ****"); int UserTotal = obj. UserCollection.total; for (int i = 0; i < UserTotal; i++) { Console.WriteLine(obj. UserCollection.rows[i].user_id + " " + obj. UserCollection.rows[i].name); } } más { Console.WriteLine("Listado de usuarios fallidos"); Console.WriteLine(httpResponse.ToString()); } }
|
[Después de buscar al usuario correctamente]
*Solo genera el ID de usuario y el Nombre de usuario, ya que el código fuente solo genera esos 2 valores de cada usuario.
Parte 4. Buscar usuario a través de Postman
[Ejemplo de solicitud: Encabezados]
*Debe usar el valor 'be-session-id' del encabezado de respuesta de la llamada a la API de inicio de sesión para autenticar el uso de la API para otras llamadas a la API.
[Ejemplo de solicitud]
[Ejemplo de respuesta: cuerpo]