Buscar objetos DriveItem dentro de una unidad
Busque elementos que coincidan con una consulta en la jerarquía de elementos. Puede buscar en una jerarquía de carpetas, en una unidad entera o en los archivos que se comparten con el usuario actual.
Permisos
Se requiere uno de los permisos siguientes para llamar a esta API. Para obtener más información, incluido cómo elegir permisos, vea Permisos.
Tipo de permiso | Permisos (de menos a más privilegiados) |
---|---|
Delegado (cuenta profesional o educativa) | Files.Read, Files.ReadWrite, Files.Read.All, Files.ReadWrite.All, Sites.Read.All, Sites.ReadWrite.All |
Delegado (cuenta personal de Microsoft) | Files.Read, Files.ReadWrite, Files.Read.All, Files.ReadWrite.All |
Aplicación | Files.Read.All, Files.ReadWrite.All, Sites.Read.All, Sites.ReadWrite.All |
Solicitud HTTP
GET /drives/{drive-id}/root/search(q='{search-text}')
GET /groups/{group-id}/drive/root/search(q='{search-text}')
GET /me/drive/root/search(q='{search-text}')
GET /sites/{site-id}/drive/root/search(q='{search-text}')
GET /users/{user-id}/drive/root/search(q='{search-text}')
Parámetros de consulta opcionales
Este método admite los $expand
parámetros de consulta , $select
, $skipToken
, $top
y $orderby
OData para personalizar la respuesta.
Parámetros de función
Nombre | Valor | Descripción |
---|---|---|
q |
string | El texto de la consulta usado para buscar elementos. Los valores pueden coincidir en varios campos, como el nombre de archivo, los metadatos y el contenido de los archivos. |
Ejemplo
Solicitud
Este es un ejemplo de la solicitud buscando en el OneDrive del usuario actual
GET /me/drive/root/search(q='{search-query}')
Respuesta
Este método devuelve un objeto que contiene una colección de objetos DriveItem que coinciden con los criterios de búsqueda. Si no se han encontrado elementos, se devuelve una colección vacía.
Si hay demasiadas coincidencias, se paginará la respuesta y una propiedad @odata.nextLink contendrá una dirección URL a la siguiente página de resultados.
Puede usar el parámetro de consulta $top
para especificar el número de elementos en la página.
HTTP/1.1 200 OK
Content-type: application/json
{
"value": [
{
"id": "0123456789abc!123",
"name": "Contoso Project",
"folder": {},
"searchResult": { "onClickTelemetryUrl": "https://bing.com/0123456789abc!123" }
},
{
"id": "0123456789abc!456",
"name": "Contoso Project 2016",
"folder": {},
"searchResult": { "onClickTelemetryUrl": "https://bing.com/0123456789abc!456" }
}
],
"@odata.nextLink": "https://graph.microsoft.com/v1.0/me/drive/root/search(query='contoso project')&skipToken=1asdlnjnkj1nalkm!asd"
}
Buscar elementos a los que puede acceder un usuario
Además de buscar elementos de una unidad, la aplicación puede buscar de forma más amplia para incluir elementos que se comparten con el usuario actual. Para ampliar el ámbito de búsqueda, use el método search en el recurso Drive.
Ejemplo
GET /me/drive/search(q='{search-query}')
Respuesta
Las respuestas al buscar desde el recurso Drive pueden incluir elementos fuera de la unidad (elementos compartidos con el usuario actual). Estos elementos incluirán la faceta remoteItem para indicar que se almacenan fuera de la unidad de destino.
HTTP/1.1 200 OK
Content-type: application/json
{
"value": [
{
"id": "0123456789abc!123",
"name": "Contoso Project",
"folder": {},
"searchResult": { "onClickTelemetryUrl": "https://bing.com/0123456789abc!123" },
"remoteItem": { "id": "!23141901", "parentReference": { "driveId": "s!1020101jlkjl12lx" } }
},
{
"id": "0123456789abc!456",
"name": "Contoso Project 2016",
"folder": {},
"searchResult": { "onClickTelemetryUrl": "https://bing.com/0123456789abc!456" }
}
],
"@odata.nextLink": "https://graph.microsoft.com/v1.0/me/drive/root/search(query='contoso project')&skipToken=1asdlnjnkj1nalkm!asd"
}
Comentarios
Nota: en OneDrive para la Empresa y SharePoint, al buscar en una jerarquía de carpetas, es posible que los tipos de archivo de imagen no se devuelvan en los resultados.
Respuestas de error
Vea Respuestas de error para obtener más información sobre la manera en que se devuelven los errores.