Vision General
La API de WebConfig es para gestionar la configuracion de rastreo web de Fess. Puede operar configuraciones como URLs de rastreo, profundidad de rastreo y patrones de exclusion.
URL Base
/api/admin/webconfig
Lista de Endpoints
| Metodo | Ruta | Descripcion |
|---|---|---|
| GET/PUT | /settings | Obtener lista de configuraciones de rastreo web |
| GET | /setting/{id} | Obtener configuracion de rastreo web |
| POST | /setting | Crear configuracion de rastreo web |
| PUT | /setting | Actualizar configuracion de rastreo web |
| DELETE | /setting/{id} | Eliminar configuracion de rastreo web |
Obtener Lista de Configuraciones de Rastreo Web
Solicitud
GET /api/admin/webconfig/settings
PUT /api/admin/webconfig/settings
Parametros
| Parametro | Tipo | Requerido | Descripcion |
|---|---|---|---|
size | Integer | No | Numero de elementos por pagina (predeterminado: 20) |
page | Integer | No | Numero de pagina (comienza en 0) |
Respuesta
{
"response": {
"status": 0,
"settings": [
{
"id": "webconfig_id_1",
"name": "Example Site",
"urls": "https://example.com/",
"includedUrls": ".*example\\.com.*",
"excludedUrls": ".*\\.(pdf|zip)$",
"includedDocUrls": "",
"excludedDocUrls": "",
"configParameter": "",
"depth": 3,
"maxAccessCount": 1000,
"userAgent": "",
"numOfThread": 1,
"intervalTime": 1000,
"boost": 1.0,
"available": true,
"sortOrder": 0
}
],
"total": 5
}
}
Obtener Configuracion de Rastreo Web
Solicitud
GET /api/admin/webconfig/setting/{id}
Respuesta
{
"response": {
"status": 0,
"setting": {
"id": "webconfig_id_1",
"name": "Example Site",
"urls": "https://example.com/",
"includedUrls": ".*example\\.com.*",
"excludedUrls": ".*\\.(pdf|zip)$",
"includedDocUrls": "",
"excludedDocUrls": "",
"configParameter": "",
"depth": 3,
"maxAccessCount": 1000,
"userAgent": "",
"numOfThread": 1,
"intervalTime": 1000,
"boost": 1.0,
"available": true,
"sortOrder": 0,
"permissions": ["admin"],
"virtualHosts": [],
"labelTypeIds": []
}
}
}
Crear Configuracion de Rastreo Web
Solicitud
POST /api/admin/webconfig/setting
Content-Type: application/json
Cuerpo de la Solicitud
{
"name": "Corporate Site",
"urls": "https://www.example.com/",
"includedUrls": ".*www\\.example\\.com.*",
"excludedUrls": ".*\\.(pdf|zip|exe)$",
"depth": 5,
"maxAccessCount": 5000,
"numOfThread": 3,
"intervalTime": 500,
"boost": 1.0,
"available": true,
"permissions": ["admin", "user"],
"labelTypeIds": ["label_id_1"]
}
Descripcion de Campos
| Campo | Requerido | Descripcion |
|---|---|---|
name | Si | Nombre de la configuracion |
urls | Si | URL de inicio de rastreo (separadas por salto de linea si son multiples) |
includedUrls | No | Patron de expresion regular para URLs a rastrear |
excludedUrls | No | Patron de expresion regular para URLs a excluir del rastreo |
includedDocUrls | No | Patron de expresion regular para URLs a indexar |
excludedDocUrls | No | Patron de expresion regular para URLs a excluir del indice |
configParameter | No | Parametros de configuracion adicionales |
depth | No | Profundidad de rastreo (predeterminado: -1=ilimitado) |
maxAccessCount | No | Numero maximo de accesos (predeterminado: 100) |
userAgent | No | User-Agent personalizado |
numOfThread | No | Numero de hilos paralelos (predeterminado: 1) |
intervalTime | No | Intervalo entre solicitudes (milisegundos, predeterminado: 0) |
boost | No | Valor de impulso en resultados de busqueda (predeterminado: 1.0) |
available | No | Habilitado/Deshabilitado (predeterminado: true) |
sortOrder | No | Orden de visualizacion |
permissions | No | Roles con permiso de acceso |
virtualHosts | No | Hosts virtuales |
labelTypeIds | No | IDs de tipo de etiqueta |
Respuesta
{
"response": {
"status": 0,
"id": "new_webconfig_id",
"created": true
}
}
Actualizar Configuracion de Rastreo Web
Solicitud
PUT /api/admin/webconfig/setting
Content-Type: application/json
Cuerpo de la Solicitud
{
"id": "existing_webconfig_id",
"name": "Updated Corporate Site",
"urls": "https://www.example.com/",
"includedUrls": ".*www\\.example\\.com.*",
"excludedUrls": ".*\\.(pdf|zip|exe|dmg)$",
"depth": 10,
"maxAccessCount": 10000,
"numOfThread": 5,
"intervalTime": 300,
"boost": 1.2,
"available": true,
"versionNo": 1
}
Respuesta
{
"response": {
"status": 0,
"id": "existing_webconfig_id",
"created": false
}
}
Eliminar Configuracion de Rastreo Web
Solicitud
DELETE /api/admin/webconfig/setting/{id}
Respuesta
{
"response": {
"status": 0,
"id": "deleted_webconfig_id",
"created": false
}
}
Ejemplos de Patrones de URL
includedUrls / excludedUrls
| Patron | Descripcion |
|---|---|
.*example\\.com.* | Todas las URLs que contienen example.com |
https://example\\.com/docs/.* | Solo bajo /docs/ |
.*\\.(pdf|doc|docx)$ | Archivos PDF, DOC, DOCX |
.*\\?.* | URLs con parametros de consulta |
.*/(login|logout|admin)/.* | URLs que contienen rutas especificas |
Ejemplos de Uso
Configuracion de Rastreo de Sitio Corporativo
curl -X POST "http://localhost:8080/api/admin/webconfig/setting" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Corporate Website",
"urls": "https://www.example.com/",
"includedUrls": ".*www\\.example\\.com.*",
"excludedUrls": ".*/(login|admin|api)/.*",
"depth": 5,
"maxAccessCount": 10000,
"numOfThread": 3,
"intervalTime": 500,
"available": true,
"permissions": ["guest"]
}'
Configuracion de Rastreo de Sitio de Documentacion
curl -X POST "http://localhost:8080/api/admin/webconfig/setting" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Documentation Site",
"urls": "https://docs.example.com/",
"includedUrls": ".*docs\\.example\\.com.*",
"excludedUrls": "",
"includedDocUrls": ".*\\.(html|htm)$",
"depth": -1,
"maxAccessCount": 50000,
"numOfThread": 5,
"intervalTime": 200,
"boost": 1.5,
"available": true,
"labelTypeIds": ["documentation_label_id"]
}'
Informacion de Referencia
Vision General de Admin API - Vision general de Admin API
API de FileConfig - API de configuracion de rastreo de archivos
API de DataConfig - API de configuracion de almacen de datos
Rastreo Web - Guia de configuracion de rastreo web