Todos los productos
Search
Centro de documentos

OpenSearch:Procesamiento de búsqueda

Última actualización: Sep 04, 2026

El sistema ofrece una sintaxis de búsqueda completa para satisfacer los requisitos de diversos escenarios.

URL

/v3/openapi/apps/$app_name/search?fetch_fields=name&query=config=format:fulljson&&query=name:'zhangsan'&&sort=id

  • $app_name: Nombre de la aplicación. Las ediciones Premium y Standard son versiones multiaplicación. Debe especificar un nombre de aplicación para acceder a una aplicación que esté en servicio.

  • La URL anterior omite encabezados de solicitud, codificación y otros factores.

  • La URL anterior omite la dirección del host para acceder a la aplicación.

  • Para consultar las definiciones, el uso y los ejemplos de los parámetros de consulta en la URL anterior, consulte la sección Parámetros de consulta a continuación.

Protocolo de solicitud

HTTP

Método de solicitud

GET

Formato compatible

JSON

Parámetros de consulta

Para obtener detalles sobre cómo concatenar parámetros de consulta, consulte el documento v3 API signing mechanism.

Parámetro

Tipo

Obligatorio

Valores válidos

Valor predeterminado

Descripción

query

string

Sí

Cuerpo principal de la búsqueda. Este parámetro no puede estar vacío. Admite cláusulas como config, query, sort, filter, aggregate, distinct y kvpair.

fetch_fields

string

No

Todos los campos visualizables.

Especifica los campos que se devolverán en los resultados de la consulta. Separe varios campos con punto y coma (;). Esto corresponde a la función de campo de visualización predeterminado en la consola.

disable

string

No

Deshabilita funciones específicas de parámetros que están activas.

first_rank_name

string

No

Nombre de la expresión de ordenamiento preliminar predeterminada en el sistema.

Establece el nombre de rough sort function. Solo se admite un nombre de ordenamiento preliminar.

second_rank_name

string

No

Nombre de la expresión de ordenamiento predeterminada para el servicio

Establece el nombre de fine sort function. Solo se admite un nombre de ordenamiento fino.

user_id

string

No

Identifica al usuario final que inició la solicitud de búsqueda actual. Este parámetro puede establecerse con uno de los siguientes valores, listados en orden descendente de prioridad: 1. El ID de inicio de sesión permanente del usuario final. 2. El IMEI del dispositivo celular del usuario final.

re_search

string

No

Establece la directiva de nueva búsqueda. Actualmente, solo puede configurar una directiva basada en el umbral de aciertos totales.

biz

string

No

Describe información empresarial relacionada con la solicitud, como el tipo de negocio desde el cual se originó.

summary

string

No

Obtiene la configuración de resumen de resultados de búsqueda del sistema.

Configura search result summary. Puede especificar campos para resaltado, truncamiento y otras operaciones.

query clause

string

Sí

Establece las condiciones de búsqueda.

config clause

string

No

Establece el formato de datos y la cantidad de documentos que se devolverán.

filter clause

string

No

Establece las condiciones de filtrado.

sort clause

string

No

Establece las condiciones de ordenamiento de documentos. Solo se admite el ordenamiento por un único campo de tipo int. Esta limitación aplica a la API v3 y a los SDK.

Uso de parámetros de consulta

  • query: El parámetro query puede combinar varias cláusulas para satisfacer diversos requisitos de búsqueda. Las cláusulas dentro del parámetro query se conectan mediante &&.

  • fetch_fields: El tamaño de los datos de texto devueltos tiene un impacto significativo en el rendimiento. Recupere únicamente los campos necesarios. Si este parámetro se configura en el SDK o la API, sobrescribe la configuración correspondiente en la consola.

  • qp: Si este parámetro se configura en el SDK o la API, sobrescribe la configuración correspondiente en la consola.

Nota: Puede consultar los efectos y resultados de qp en la página de prueba de búsqueda de la consola. Actualmente, la API y los SDK no exponen esta información.

  • disable: Utilice este parámetro para deshabilitar funciones de parámetros como qp, summary, first_rank, second_rank y re_search.

    Descripción de la función

    • Este parámetro controla si se deshabilitan ciertas funciones durante una consulta.

    • Permite deshabilitar funciones como análisis de consultas, resaltado, ordenamiento preliminar y fino, y nueva búsqueda.

    Formato del parámetro:

    disable=function[;function]
    function=function_name[:function_param]
    • Ejemplos:

      • Para deshabilitar el análisis de consultas, establezca disable=qp.

      • Para deshabilitar la función spell_check en el análisis de consultas, establezca disable=qp:spell_check.

      • Para deshabilitar la nueva búsqueda, establezca disable=re_search.

  • first_rank_name: Si este parámetro se configura en el SDK o la API, sobrescribe la configuración correspondiente en la consola.

  • second_rank_name: Si este parámetro se configura en el SDK o la API, sobrescribe la configuración correspondiente en la consola.

  • user_id:

    • Al establecer este parámetro en una solicitud de búsqueda, el valor de user_id debe codificarse en URL.

  • raw_query:

    Descripción de la función

    • Este parámetro especifica la consulta de búsqueda original ingresada por el usuario final.

    Formato del parámetro:

    raw_query=content
    • content: La consulta de búsqueda original.

  • re_search:

    Descripción de la función

    • Este parámetro establece la directiva de nueva búsqueda. Actualmente, solo puede configurar una directiva basada en el umbral de aciertos totales.

    Formato del parámetro:

    re_search=strategy:threshold,params:total_hits#${COUNT}
    • COUNT: Límite superior para total_hits que desencadena una nueva búsqueda. Se realiza una nueva búsqueda si total_hits es menor que COUNT.

    • Ejemplo:

      • re_search=url_encode(strategy:threshold,params:total_hits#6)

  • biz:

    Descripción de la función

    • Este parámetro describe información empresarial relacionada con la solicitud, como el tipo de negocio desde el cual se originó.

      Formato del parámetro:

      biz=type:$TYPE
    • type: Tipo de tráfico. Puede definir el valor. Posteriormente, podrá utilizar este valor para distinguir entre diferentes fuentes de tráfico en los informes.

    • Ejemplo:

      • biz=type:home_page

  • vector_threshold:

  • Descripción de la función

    • Este parámetro controla el umbral de puntuación vectorial para la recuperación de documentos en una búsqueda vectorial. Solo se devuelven los documentos con una puntuación vectorial inferior a este valor.

  • Formato del parámetro:

      vector_threshold=14.0
    • El valor es un número de punto flotante.

    • Este parámetro es opcional. Si no se establece, el sistema utiliza un umbral integrado.

  • summary:

    • Los parámetros summary_element_prefix y summary_element_postfix deben configurarse simultáneamente.

    • El parámetro summary_element y el par (summary_element_prefix, summary_element_postfix) se afectan mutuamente. Una configuración posterior sobrescribe a una anterior.

    • Actualmente, no es posible configurar el resumen y el resaltado por separado.

    • Si este parámetro se configura en el SDK o la API, sobrescribe la configuración correspondiente en la consola.

Parámetro

Tipo

Obligatorio

Valores válidos

Valor predeterminado

Descripción

summary_field

string

Sí

Campo que se resumirá.

summary_element

string

No

em

Etiqueta de resaltado; es una etiqueta HTML sin sus corchetes angulares.

summary_ellipsis

string

No

…

Puntos suspensivos al final del resumen.

summary_snipped

int

No

1

Cantidad de fragmentos de resumen que se seleccionarán.

summary_len

string

No

Longitud del fragmento de resumen que se mostrará.

summary_element_prefix

string

No

Prefijo para el resaltado. Debe ser una etiqueta HTML completa, como <em>.

summary_element_postfix

string

No

Sufijo para el resaltado. Debe ser una etiqueta HTML completa, como </em>.

Resultado devuelto

Parámetro

Tipo

Descripción

status

string

Resultado de la ejecución. OK indica éxito. FAIL indica error. Si la solicitud falla, solucione el problema basándose en el código de error devuelto.

request_id

string

ID del registro de consulta. Se utiliza principalmente para la solución de problemas.

result

JSON

Resultado real. Incluye información como el tiempo de consulta (searchtime), la cantidad total de resultados del motor (total), la cantidad de resultados devueltos para la solicitud actual (num), la cantidad máxima de resultados que pueden devolverse para la consulta (viewtotal), los resultados de la consulta (items) y los resultados estadísticos (facet).

errors

list

Código y mensaje de error. message representa el mensaje de error. Para conocer el significado de code, consulte el documento Error Code Description.

  • searchtime: Tiempo, en segundos, que consumió el motor para procesar la solicitud.

  • Diferencias entre total, viewtotal y num: total es la cantidad de resultados que cumplen las condiciones de consulta en el motor, sin considerar la cláusula config. Este valor es una estimación cuando hay muchos resultados y generalmente se usa con fines de visualización. viewtotal es la cantidad máxima de resultados que devuelve el motor por motivos de rendimiento y relevancia. Para paginar resultados, start + hit debe ser menor que viewtotal. num es la cantidad real de elementos devueltos para la solicitud actual. Este valor está limitado por los parámetros start y hit en la cláusula config y no excede el valor de hit.

  • compute_cost: Arreglo que contiene un único elemento de mapa. index_name es el ID de la aplicación y value es la cantidad de Unidades de Cómputo Lógico (LCU) consumidas por la consulta.

  • items: Contiene los datos recuperados. El parámetro fields incluye el contenido de los resultados de búsqueda.

  • variableValue: Resultado devuelto de un parámetro personalizado, como un valor de distancia. El nodo variableValue se muestra únicamente si format en config clause se establece en xml o fulljson. De forma predeterminada, este nodo no se muestra en formato json.

  • sortExprValues: Puntuación de ordenamiento del documento correspondiente.

  • facet: Almacena la información devuelta por la cláusula Aggregate.

  • Tipo de campo de arreglo: Si se devuelve un campo de arreglo en formato json o fulljson, los datos se separan con \t. Si se devuelve en formato xml, los datos se separan con espacios.

Ejemplo de búsqueda

Respuesta JSON

{
 "result": {
  "searchtime": 0.009554,
  "total": 1,
  "compute_cost": [
   {
    "index_name": "110247758",
    "value": 0.304
   }
  ],
  "num": 1,
  "viewtotal": 1,
  "items": [
   {
    "variableValue": {

    },
    "sortExprValues": [
     "10000"
    ],
    "property": {

    },
    "attribute": {

    },
    "fields": {
     "size": "XL",
     "discount_price": "9.9",
     "pid": "950",
     "range_age": "18\t25",
     "detail": "Men's jacket lapel 2021 spring and autumn new youth thin top casual zipper jacket",
     "index_name": "110247758"
    }
   }
  ],
  "facet": []
 },
 "ops_request_misc": "%7B%22request%5Fid%22%3A%22162642700916781929257960%22%2C%22scm%22%3A%2220140713.110229359..%22%7D",
 "tracer": "",
 "request_id": "162642700916781929257960",
 "errors": [],
 "status": "OK"
}

Respuesta de error

{
 "result": {
  "searchtime": 0.003999,
  "total": 0,
  "compute_cost": [
   {
    "index_name": "110247758",
    "value": 0.232
   }
  ],
  "num": 0,
  "viewtotal": 0,
  "items": [],
  "facet": []
 },
 "ops_request_misc": "%7B%22request%5Fid%22%3A%22162642716516781913069826%22%2C%22scm%22%3A%2220140713.110229359..%22%7D",
 "tracer": "",
 "request_id": "162642716516781913069826",
 "errors": [
  {
   "code": 6127,
   "message": "Attribute not exist."
  }
 ],
 "status": "FAIL"
}
  • Nota: Un status de FAIL indica que ocurrió un error y no se devolvieron resultados. Sin embargo, en algunos casos pueden devolverse tanto un error como resultados. En estas situaciones, el status es OK. Por ejemplo, si ocurre un 1000 server error (tiempo de espera de búsqueda agotado) o un error 2112 (índice para ordenamiento fino no especificado), aún podrían devolverse resultados.

Escaneo con scroll

Una búsqueda tradicional está diseñada para recuperar los resultados más relevantes en el menor tiempo posible. Por lo tanto, la cantidad de resultados de búsqueda es limitada. Por ejemplo, el método de búsqueda puede recuperar un máximo de 5,000 documentos. En algunos escenarios, podría necesitar recuperar más resultados para su análisis. Utilice la API de scroll para recuperar una mayor cantidad de resultados.

Cláusulas compatibles

  • Cláusula query.

  • Cláusula config. El parámetro start no es válido en esta cláusula.

  • Cláusula filter.

  • Cláusula sort. Esta cláusula solo admite ordenamiento por un único campo de tipo int y está limitada a la API v3 y a los SDK.

URL

Consulta inicial

/v3/openapi/apps/$app_name/search?search_type=scan&scroll=1m&query_parameters

Consultas subsiguientes

/v3/openapi/apps/$app_name/search?scroll_id=$scroll_id&scroll=1m&query_parameters

  • $app_name: Nombre de la aplicación.

  • La URL anterior omite la dirección del host para acceder a la aplicación.

  • Las URL de solicitud de scroll anteriores omiten encabezados de solicitud, contenido de parámetros de consulta, codificación y otros factores. Para ver una URL de solicitud de scroll completa, consulte el ejemplo a continuación.

  • El método scroll tiene funcionalidad limitada y no es compatible con la mayoría de las funciones. Para obtener más información sobre limitaciones específicas, consulte las notas al final.

Protocolo de solicitud

HTTP

Método de solicitud HTTP

GET

Formato compatible

JSON

Parámetros de consulta

Parámetro

Tipo

Obligatorio

Valores válidos

Valor predeterminado

Descripción

scroll

STRING

Sí

Week, Day, Hour, minute, second

Especifica el periodo de validez para la siguiente solicitud de scroll. Debe establecer este parámetro en cada solicitud. Por ejemplo, 1m indica 1 minuto. Las unidades de tiempo admitidas incluyen: w para semana, d para día, h para hora, m para minuto y s para segundo.

search_type

STRING

Sí

scan

Este parámetro es obligatorio para la primera consulta. No es necesario para consultas subsiguientes. Las consultas posteriores se realizan especificando el scroll_id.

scroll_id

string

Sí

La primera llamada al método scroll devuelve un scroll_id, pero no incluye datos. Para cada búsqueda subsiguiente, debe especificar el scroll_id de la respuesta anterior. Los resultados de búsqueda subsiguientes incluirán tanto un nuevo scroll_id como los datos correspondientes. Este parámetro es obligatorio para todas las consultas subsiguientes.

query clause

string

Sí

Establece las condiciones de búsqueda.

config clause

string

Sí

Establece el formato de datos y la cantidad de documentos que se devolverán.

filter clause

string

No

Establece las condiciones de filtrado.

sort clause

string

No

Establece las condiciones de ordenamiento de documentos. Solo se admite el ordenamiento por un único campo de tipo int. Esta limitación aplica a la API v3 y a los SDK.

fetch_fields parameter

string

No

Especifica qué campos de la aplicación se devolverán.

Resultado devuelto

Parámetro

Tipo

Descripción

status

string

Resultado de la ejecución. OK indica éxito. FAIL indica error. Si la solicitud falla, solucione el problema basándose en el código de error devuelto.

request_id

string

ID del registro de consulta. Se utiliza principalmente para la solución de problemas.

result

string

Resultado real. Incluye información como el tiempo de consulta (searchtime), la cantidad total de resultados del motor (total), la cantidad de resultados devueltos para la solicitud actual (num), la cantidad máxima de resultados que pueden devolverse para la consulta (viewtotal), los resultados de la consulta (items), los resultados estadísticos (facet) y el scroll_id.

errors

string

Contenido del error. error_message representa el mensaje de error. Para obtener más información sobre el significado de error_code, consulte el documento Error codes.

Nota

Actualmente, la API de scroll solo admite los formatos de respuesta fulljson y json.

Ejemplo de scroll

Nota

En la cláusula config, el parámetro start no es válido. Utilice el parámetro hit para establecer la cantidad de documentos que se recuperarán en cada lote. Funciones como aggregate, distinct y expresiones de ordenamiento preliminar y fino no son válidas. La cláusula sort solo admite ordenamiento por un único campo de tipo int. No se admiten consultas de scroll en múltiples aplicaciones. Si proporciona un scroll_id no válido, se reportará un error. Los formatos de respuesta admitidos son fulljson y json. La primera consulta solo devuelve un scroll_id y ningún dato de documento. Debe realizar otra consulta y proporcionar el scroll_id de la respuesta anterior para recuperar los datos.

Primera solicitud

Nota

Este ejemplo omite encabezados de solicitud, codificación y otros factores.

http://$host/v3/openapi/apps/app_schema_demo/search?query=config=start:0,hit:1,format:fulljson,rerank_size:200&&query=name:'search'&&sort=+id&&filter=id>0&search_type=scan&scroll=1m&fetch_fields=id;name;phone;int_arr;literal_arr;float_arr;cate_id

Respuesta exitosa

{
  "status": "OK",
  "request_id": "150150574119953661605242",
  "result": {
    "searchtime": 0.005029,
    "total": 1,
    "num": 0,
    "viewtotal": 1,
    "scroll_id": "eJxtUMtuhDAM/BrvOYQC5cABdulvRFFIirsm2TpBavv1Ndut1EMlS36NZ0Y2ZHMxbueceAjIuWCMnrPjRITLyfzZm83y9V QVGT8x80U3PxQNUqieVZV1/an4ItbTUBPSx5wgXqKdvOSbmuKR8ZYjGWWirB4tvToAiX7u3G2eCNK77vnz8GlGPAV6suKBeqxAn0OiTd7NGEnesspyoyFLF6hecn4JUKjVgp0K3FnkfMfIyPoDuYWegX9GeYOpicY9TG8gwOSuBL04X1 MMg3ROwCesLlG6X7a2o=",
    "items": [],
    "facet": []
  },
  "errors": [],
  "tracer": ""
}

Solicitudes subsiguientes

Nota

Este ejemplo omite detalles como encabezados de solicitud y codificación.

http://$host/v3/openapi/apps/app_schema_demo/search?fetch_fields=id;name;phone;int_arr;literal_arr;float_arr;cate_id&query=config=start:0,hit:1,format:fulljson,rerank_size:200&&query=name:'search'&&sort=+id&&filter=id>0&scroll=1m&scroll_id=eJxtUMtuhDAM/BrvOYQC5cABdulvRFFIirsm2TpBavv1Ndut1EMlS36NZ0Y2ZHMxbueceAjIuWCMnrPjRITLyfzZm83y9V+QVGT8x80U3PxQNUqieVZV1/an4ItbTUBPSx5wgXqKdvOSbmuKR8ZYjGWWirB4tvToAiX7u3G2eCNK77vnz8GlGPAV6suKBeqxAn0OiTd7NGEnesspyoyFLF6hecn4JUKjVgp0K3FnkfMfIyPoDuYWegX9GeYOpicY9TG8gwOSuBL04X1+MMg3ROwCesLlG6X7a2o=

Valor devuelto

{
  "status": "OK",
  "request_id": "150150574119952551519970",
  "result": {
    "searchtime": 0.006293,
    "total": 1,
    "num": 1,
    "viewtotal": 1,
    "scroll_id": "eJxNT9tugzAM/RrznIRC4YEHaNlvRFFIhteQtE6Qtn39TNdJk2z5dnx8rIPJRdudcqKhl60Uir2Vp06ISv8b6s3QbZCVzpaCdp93XXBzg2wEW9MJ2dWq8q7YVXt0YckDLlBP0WyOw31N8YgYizZEnAUsjkx4VT4k8zexpjiNS/XYHX0NNkWP71BfVyxQjxLUxSfazFH4PYSPnCL3iMniDZq3jN98aFRCgGrZniy8/itkBHWGuYVeQH+B+QzTCUZ1NJ9gj4FVMfrQPr8Y+Hk+dgU14fIDVhtfTw==",
    "items": [
      {
        "fields": {
          "cate_id": "0",
          "float_arr": "0",
          "id": "1",
          "int_arr": "0",
          "literal_arr": "search",
          "name": "search",
          "phone": "123****5678",
          "index_name": "app_schema_demo"
        },
        "property": {},
        "attribute": {},
        "variableValue": {},
        "sortExprValues": [
          "1"
        ]
      }
    ],
    "facet": []
  },
  "errors": [],
  "tracer": ""
}