Estoy usando la búsqueda de Azure en mi proyecto y quiero hacer un campo de texto de autocompletar, funciona como se esperaba. aquí está el código:
const suggestItems = async (req, res) => {
try {
// Reading inputs from HTTP Request
const q = (req.query.q || (req.body && req.body.q));
const top = (req.query.top || (req.body && req.body.top));
const suggester = (req.query.suggester || (req.body && req.body.suggester));
// Let's get the top 5 suggestions for that search term
const suggestions = await client.suggest(q, suggester, { top: parseInt(top) });
//const suggestions = await client.autocomplete(q, suggester, {top: parseInt(top)});
console.log(suggestions.results)
return res.status(status.OK)
.json({ suggestions: suggestions.results})
} catch (error) {
handleError(res, error)
}
}
ella es el resultado:
[
{ text: 'Alpha Aromatics (MA)', document: { id: '4' } },
{ text: 'Alpha Aromatics (USA)', document: { id: '5' } },
{ text: 'Art Land - Winter Palace', document: { id: '6' } },
{ text: 'Alpha Aromatics (USA)', document: { id: '3' } }
]
Aquí está la consulta pasada por el cartero:
{
"q":"ar","top":5,"suggester":"sg"
}
pero el problema es que, en el resultado, solo tengo el texto y la identificación del documento, estoy buscando otros campos como el estado, por ejemplo, ¿cómo puedo obtener eso, por favor?
Supongo que "Estado" es uno de sus campos de índice, de la pregunta. Debe asegurarse de marcar los campos que debe devolver en los resultados como retrievable
en su definición de índice. Parece que solo tiene campos de texto e identificación como retrievable
. Para obtener más información: https://docs.microsoft.com/en-us/azure/search/search-what-is-an-index .
Ejemplo:
Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.
En caso de infracción, por favor [email protected] Eliminar
Déjame decir algunas palabras