Configuración de Notificación de Evento para un Bucket
Funciones
Esta operación notifica a los usuarios de sus operaciones en los bucket, lo que permite a los usuarios saber los eventos ocurridos en los bucket de manera oportuna.
De forma predeterminada, la función de notificación de un bucket no está habilitada y el elemento NotificationConfiguration es null. Si desea deshabilitar la función, establezca el elemento NotificationConfiguration en null.
1 2 |
<NotificationConfiguration> </NotificationConfiguration> |
Después de recibir una solicitud para configurar la notificación de evento, OBS verifica si existe el tema SMN especificado y si el tema está autorizado a OBS. Si el tema existe y está autorizado a OBS, OBS envía una notificación de prueba al suscriptor del tema.
Para realizar esta operación, debe tener el permiso PutBucketNotification. De forma predeterminada, el permiso se concede únicamente al propietario del bucket. Sin embargo, se puede conceder a otros usuarios configurando la política de bucket.
1. Para obtener más información acerca de cómo conceder temas a OBS, consulte Configuración de políticas de temas.
2. El cuerpo de una solicitud de SMN no puede superar los 100 KB de tamaño.
3. Un cuerpo de solicitud puede contener un máximo de 100 elementos de TopicConfig.
Sintaxis de solicitud
1 2 3 4 5 6 7 |
PUT /?notification HTTP/1.1 Host: bucketname.obs.region.myhuaweicloud.com Date: date Authorization: authorization string <NotificationConfiguration> </NotificationConfiguration> |
Parámetros de solicitud
Esta solicitud no contiene parámetros de mensaje.
Encabezados de solicitud
Esta solicitud utiliza encabezados comunes. Para más detalles, consulte Tabla 3.
Elementos de solicitud
Esta solicitud contiene elementos para especificar la configuración de notificación para el bucket en formato XML. Para obtener más información sobre los elementos de configuración, consulte Tabla 1.
Elemento |
Descripción |
Obligatorio |
---|---|---|
NotificationConfiguration |
Elemento raíz para configurar la función de notificación de eventos de un bucket. Si el subelemento es null, la función está deshabilitada. Tipo: container Antepasado: ninguno Hijos: cero o múltiples elementos de |
Sí |
Id |
ID único de cada notificación de evento. Si el usuario no especifica un ID, el sistema asigna un ID automáticamente. Tipo: string Antepasado: |
No |
Filter |
Elemento utilizado para almacenar reglas de filtrado de nombres de objeto. Tipo: container Antepasado: Hijos: Object |
No |
Object |
Elemento que define la regla de filtrado. La regla filtra los objetos basándose en los prefijos y sufijos de los nombres de objeto. Tipo: container Antepasado: Filter Hijos: uno o más FilterRules |
No |
FilterRule |
Elemento que define los pares clave-valor de la regla de filtrado Tipo: container Antepasado: Object Hijos: Name, Value |
No |
Name |
Prefijo o sufijo de nombres de objeto para filtrar Tipo: string Antepasado: FilterRule Opciones de valor: prefix, suffix |
No |
Value |
Palabra clave de los nombres de objetos. En función del prefijo o sufijo definido por Name, introduzca la palabra clave para filtrar objetos. Una string más larga de caracteres proporciona un resultado de filtrado más preciso. Se admite un máximo de 1024 caracteres. Tipo: string Antepasado: FilterRule |
No |
Event |
Tipo de eventos que deben ser notificados
NOTA:
Se pueden agregar varios tipos de eventos en un elemento de . Tipo: string Opciones de valor: Se pueden utilizar los siguientes valores para cargar un objeto:
O utilice caracteres comodín para admitir todas las operaciones de carga:
Se pueden utilizar los siguientes valores para eliminar un objeto:
O utilice caracteres comodín para admitir todas las operaciones de eliminación:
Antepasado: |
Requerido si se agrega |
Sintaxis de respuesta
1 2 3 4 |
HTTP/1.1 status_code Date: date Content-Length: length Content-Type: type |
Encabezados de respuesta
La respuesta a la solicitud utiliza encabezados comunes. Para más detalles, consulte Tabla 1.
Elementos de respuesta
Esta respuesta no contiene elementos.
Respuestas de error
Cuando se llama a esta operación, el sistema comprueba si el elemento NotificationConfiguration es válido y si la configuración es válida. En la siguiente tabla se enumeran los errores comunes y las posibles causas de esta operación.
Código de error |
Descripción |
Código de estado de HTTP |
---|---|---|
InvalidArgument |
Las posibles causas de este error son:
|
400 Bad Request (400: Solicitud errónea) |
AccessDenied |
El operador no es el propietario del bucket y no se le ha concedido el permiso PutBucketNotification. |
403 Forbidden (403: Prohibido) |
Modelo de solicitud
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
PUT /?notification HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.region.myhuaweicloud.com Accept: */* Date: WED, 01 Jul 2015 03:15:45 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:uRTt8YTkAqJCUfWfYkveEcIGAC0= Content-Length: 538 <NotificationConfiguration> <> <Id>ConfigurationId</Id> <Filter> <Object> <FilterRule> <Name>prefix</Name> <Value>object</Value> </FilterRule> <FilterRule> <Name>suffix</Name> <Value>txt</Value> </FilterRule> </Object> </Filter> <Topic>urn:smn:region:4b29a3cb5bd64581bda5714566814bb7:tet555</Topic> <Event>ObjectCreated:Put</Event> </> </NotificationConfiguration> |
Modelo de respuesta
1 2 3 4 5 6 |
HTTP/1.1 200 OK Server: OBS x-obs-request-id: 9046000001643C8E80C19FAC4D8068E3 x-obs-id-2: 32AAAQAAEAABSAAkgAIAABAAAQAAEAABCTFAxJPTib3GkcQ7nVVs4C8Z6NNcfVDu Date: WED, 01 Jul 2015 03:15:46 GMT Content-Length: 0 |