Gerenciamento de metadados de objetos
Cenário de aplicação
Metadados de objeto são um conjunto de pares nome-valor que descrevem o objeto e são usados para gerenciamento de objetos.
Atualmente, apenas os metadados definidos pelo sistema são suportados.
Os metadados definidos pelo sistema são classificados nos seguintes tipos: controlados pelo sistema e controlados pelo usuário. Por exemplo, metadados como Last-Modified são controlados pelo sistema e não podem ser modificados. Você pode modificar os metadados, como ContentLanguage, por meio da API. Os metadados que podem ser modificados são descritos a seguir:
Nome |
Descrição |
---|---|
ContentDisposition |
Fornece um nome de arquivo padrão para o objeto que está sendo solicitado. Quando um objeto está sendo baixado ou acessado, o arquivo com o nome de arquivo padrão é exibido diretamente no navegador ou uma caixa de diálogo de download é exibida se o arquivo estiver sendo acessado. Por exemplo, selecione ContentDisposition como o nome de metadados e digite attachment;filename="testfile.xls" como o valor de metadados de um objeto. Se você acessar o objeto por meio de um link, uma caixa de diálogo será exibida diretamente para o download de objetos e o nome do objeto será alterado para testfile.xls. Para obter detalhes, consulte a definição sobre ContentDisposition em HTTP. |
ContentLanguage |
Indica o idioma ou idiomas destinados ao público. Portanto, um usuário pode diferenciar de acordo com o idioma preferido do usuário. Para obter detalhes, consulte a definição sobre ContentLanguage em HTTP. |
WebsiteRedirectLocation |
Redireciona um objeto para outro objeto ou para um URL externo. A função de redirecionamento é implementada usando hospedagem de sites estáticos. Por exemplo, você pode executar as seguintes operações para implementar o redirecionamento de objeto:
|
ContentEncoding |
Formato de codificação de conteúdo quando um objeto é baixado. As opções são as seguintes:
|
CacheControl |
Comportamento de cache da página da Web quando o objeto especificado é baixado.
|
Vencimento |
Tempo de expiração do cache (GMT) |
ContentType |
Tipo de arquivo de um objeto. Para mais detalhes, consulte Tipo de conteúdo de metadados do objeto. |
- Quando o versionamento é ativado para um bucket, você pode definir metadados para objetos que são Versão mais recente, mas não pode definir metadados para objetos que são Versão histórica.
- Você não pode definir metadados de objeto para um objeto Arquivo.
Tipo de conteúdo de metadados do objeto
Quando um objeto é carregado em OBS por meio do console de OBS ou de uma ferramenta, o sistema corresponde automaticamente o valor de Content-Type com base na extensão de nome de arquivo do objeto. Quando você acessa um objeto por meio de um navegador da Web, o sistema especifica um aplicativo para abrir o objeto de acordo com o valor de Content-Type. Você pode modificar o Content-Type de um objeto com base em sua extensão de nome de arquivo.
Se você carregar um objeto chamando uma API, especifique o valor de Content-Type porque o sistema não corresponde automaticamente ao valor de Content-Type.
Extensão de nome de arquivo |
Tipo de conteúdo |
Extensão de nome de arquivo |
Tipo de conteúdo |
---|---|---|---|
* (binary stream, which does not know the type of the file to be downloaded) |
application/octet-stream |
.tif |
image/tiff |
.001 |
application/x-001 |
.301 |
application/x-301 |
.323 |
text/h323 |
.906 |
application/x-906 |
.907 |
drawing/907 |
.a11 |
application/x-a11 |
.acp |
audio/x-mei-aac |
.ai |
application/postscript |
.aif |
audio/aiff |
.aifc |
audio/aiff |
.aiff |
audio/aiff |
.anv |
application/x-anv |
.asa |
text/asa |
.asf |
video/x-ms-asf |
.asp |
text/asp |
.asx |
video/x-ms-asf |
.au |
audio/basic |
.avi |
video/avi |
.awf |
application/vnd.adobe.workflow |
.biz |
text/xml |
.bmp |
application/x-bmp |
.bot |
application/x-bot |
.c4t |
application/x-c4t |
.c90 |
application/x-c90 |
.cal |
application/x-cals |
.cat |
application/vnd.ms-pki.seccat |
.cdf |
application/x-netcdf |
.cdr |
application/x-cdr |
.cel |
application/x-cel |
.cer |
application/x-x509-ca-cert |
.cg4 |
application/x-g4 |
.cgm |
application/x-cgm |
.cit |
application/x-cit |
.class |
java/* |
.cml |
text/xml |
.cmp |
application/x-cmp |
.cmx |
application/x-cmx |
.cot |
application/x-cot |
.crl |
application/pkix-crl |
.crt |
application/x-x509-ca-cert |
.csi |
application/x-csi |
.css |
text/css |
.cut |
application/x-cut |
.dbf |
application/x-dbf |
.dbm |
application/x-dbm |
.dbx |
application/x-dbx |
.dcd |
text/xml |
.dcx |
application/x-dcx |
.der |
application/x-x509-ca-cert |
.dgn |
application/x-dgn |
.dib |
application/x-dib |
.dll |
application/x-msdownload |
.doc |
application/msword |
.dot |
application/msword |
.drw |
application/x-drw |
.dtd |
text/xml |
.dwf |
Model/vnd.dwf |
.dwf |
application/x-dwf |
.dwg |
application/x-dwg |
.dxb |
application/x-dxb |
.dxf |
application/x-dxf |
.edn |
application/vnd.adobe.edn |
.emf |
application/x-emf |
.eml |
message/rfc822 |
.ent |
text/xml |
.epi |
application/x-epi |
.eps |
application/x-ps |
.eps |
application/postscript |
.etd |
application/x-ebx |
.exe |
application/x-msdownload |
.fax |
image/fax |
.fdf |
application/vnd.fdf |
.fif |
application/fractals |
.fo |
text/xml |
.frm |
application/x-frm |
.g4 |
application/x-g4 |
.gbr |
application/x-gbr |
. |
application/x- |
.gif |
image/gif |
.gl2 |
application/x-gl2 |
.gp4 |
application/x-gp4 |
.hgl |
application/x-hgl |
.hmr |
application/x-hmr |
.hpg |
application/x-hpgl |
.hpl |
application/x-hpl |
.hqx |
application/mac-binhex40 |
.hrf |
application/x-hrf |
.hta |
application/hta |
.htc |
text/x-component |
.htm |
text/html |
.html |
text/html |
.htt |
text/webviewhtml |
.htx |
text/html |
.icb |
application/x-icb |
.ico |
image/x-icon |
.ico |
application/x-ico |
.iff |
application/x-iff |
.ig4 |
application/x-g4 |
.igs |
application/x-igs |
.iii |
application/x-iphone |
.img |
application/x-img |
.ins |
application/x-internet-signup |
.isp |
application/x-internet-signup |
.IVF |
video/x-ivf |
.java |
java/* |
.jfif |
image/jpeg |
.jpe |
image/jpeg |
.jpe |
application/x-jpe |
.jpeg |
image/jpeg |
.jpg |
image/jpeg |
.jpg |
application/x-jpg |
.js |
application/x-javascript |
.jsp |
text/html |
.la1 |
audio/x-liquid-file |
.lar |
application/x-laplayer-reg |
.latex |
application/x-latex |
.lavs |
audio/x-liquid-secure |
.lbm |
application/x-lbm |
.lmsff |
audio/x-la-lms |
.ls |
application/x-javascript |
.ltr |
application/x-ltr |
.m1v |
video/x-mpeg |
.m2v |
video/x-mpeg |
.m3u |
audio/mpegurl |
.m4e |
video/mpeg4 |
.mac |
application/x-mac |
.man |
application/x-troff-man |
.math |
text/xml |
.mdb |
application/msaccess |
.mdb |
application/x-mdb |
.mfp |
application/x-shockwave-flash |
.mht |
message/rfc822 |
.mhtml |
message/rfc822 |
.mi |
application/x-mi |
.mid |
audio/mid |
.midi |
audio/mid |
.mil |
application/x-mil |
.mml |
text/xml |
.mnd |
audio/x-musicnet-download |
.mns |
audio/x-musicnet-stream |
.mocha |
application/x-javascript |
.movie |
video/x-sgi-movie |
.mp1 |
audio/mp1 |
.mp2 |
audio/mp2 |
.mp2v |
video/mpeg |
.mp3 |
audio/mp3 |
.mp4 |
video/mp4 |
.mpa |
video/x-mpg |
.mpd |
application/vnd.ms-project |
.mpe |
video/x-mpeg |
.mpeg |
video/mpg |
.mpg |
video/mpg |
.mpga |
audio/rn-mpeg |
.mpp |
application/vnd.ms-project |
.mps |
video/x-mpeg |
.mpt |
application/vnd.ms-project |
.mpv |
video/mpg |
.mpv2 |
video/mpeg |
.mpw |
application/vnd.ms-project |
.mpx |
application/vnd.ms-project |
.mtx |
text/xml |
.mxp |
application/x-mmxp |
.net |
image/pnetvue |
.nrf |
application/x-nrf |
.nws |
message/rfc822 |
.odc |
text/x-ms-odc |
.out |
application/x-out |
.p10 |
application/pkcs10 |
.p12 |
application/x-pkcs12 |
.p7b |
application/x-pkcs7-certificates |
.p7c |
application/pkcs7-mime |
.p7m |
application/pkcs7-mime |
.p7r |
application/x-pkcs7-certreqresp |
.p7s |
application/pkcs7-signature |
.pc5 |
application/x-pc5 |
.pci |
application/x-pci |
.pcl |
application/x-pcl |
.pcx |
application/x-pcx |
|
application/pdf |
|
application/pdf |
.pdx |
application/vnd.adobe.pdx |
.pfx |
application/x-pkcs12 |
.pgl |
application/x-pgl |
.pic |
application/x-pic |
.pko |
application/vnd.ms-pki.pko |
.pl |
application/x-perl |
.plg |
text/html |
.pls |
audio/scpls |
.plt |
application/x-plt |
.png |
image/png |
.png |
application/x-png |
.pot |
application/vnd.ms-powerpoint |
.ppa |
application/vnd.ms-powerpoint |
.ppm |
application/x-ppm |
.pps |
application/vnd.ms-powerpoint |
.ppt |
application/vnd.ms-powerpoint |
.ppt |
application/x-ppt |
.pr |
application/x-pr |
.prf |
application/pics-rules |
.prn |
application/x-prn |
.prt |
application/x-prt |
.ps |
application/x-ps |
.ps |
application/postscript |
.ptn |
application/x-ptn |
.pwz |
application/vnd.ms-powerpoint |
.r3t |
text/vnd.rn-realtext3d |
.ra |
audio/vnd.rn-realaudio |
.ram |
audio/x-pn-realaudio |
.ras |
application/x-ras |
.rat |
application/rat-file |
.rdf |
text/xml |
.rec |
application/vnd.rn-recording |
.red |
application/x-red |
.rgb |
application/x-rgb |
.rjs |
application/vnd.rn-realsystem-rjs |
.rjt |
application/vnd.rn-realsystem-rjt |
.rlc |
application/x-rlc |
.rle |
application/x-rle |
.rm |
application/vnd.rn-realmedia |
.rmf |
application/vnd.adobe.rmf |
.rmi |
audio/mid |
.rmj |
application/vnd.rn-realsystem-rmj |
.rmm |
audio/x-pn-realaudio |
.rmp |
application/vnd.rn-rn_music_package |
.rms |
application/vnd.rn-realmedia-secure |
.rmvb |
application/vnd.rn-realmedia-vbr |
.rmx |
application/vnd.rn-realsystem-rmx |
.rnx |
application/vnd.rn-realplayer |
.rp |
image/vnd.rn-realpix |
.rpm |
audio/x-pn-realaudio-plugin |
.rsml |
application/vnd.rn-rsml |
.rt |
text/vnd.rn-realtext |
.rtf |
application/msword |
.rtf |
application/x-rtf |
.rv |
video/vnd.rn-realvideo |
.sam |
application/x-sam |
.sat |
application/x-sat |
.sdp |
application/sdp |
.sdw |
application/x-sdw |
.sit |
application/x-stuffit |
.slb |
application/x-slb |
.sld |
application/x-sld |
.slk |
drawing/x-slk |
.smi |
application/smil |
.smil |
application/smil |
.smk |
application/x-smk |
.snd |
audio/basic |
.sol |
text/plain |
.sor |
text/plain |
.spc |
application/x-pkcs7-certificates |
.spl |
application/futuresplash |
.spp |
text/xml |
.ssm |
application/streamingmedia |
.sst |
application/vnd.ms-pki.certstore |
.stl |
application/vnd.ms-pki.stl |
.stm |
text/html |
.sty |
application/x-sty |
.svg |
text/svg+xml |
.swf |
application/x-shockwave-flash |
.tdf |
application/x-tdf |
.tg4 |
application/x-tg4 |
.tga |
application/x-tga |
.tif |
image/tiff |
.tif |
application/x-tif |
.tiff |
image/tiff |
.tld |
text/xml |
.top |
drawing/x-top |
.torrent |
application/x-bittorrent |
.tsd |
text/xml |
.txt |
text/plain |
.uin |
application/x-icq |
.uls |
text/iuls |
.vcf |
text/x-vcard |
.vda |
application/x-vda |
.vdx |
application/vnd.visio |
.vml |
text/xml |
.vpg |
application/x-vpeg005 |
.vsd |
application/vnd.visio |
.vsd |
application/x-vsd |
.vss |
application/vnd.visio |
.vst |
application/vnd.visio |
.vst |
application/x-vst |
.vsw |
application/vnd.visio |
.vsx |
application/vnd.visio |
.vtx |
application/vnd.visio |
.vxml |
text/xml |
.wav |
audio/wav |
.wax |
audio/x-ms-wax |
.wb1 |
application/x-wb1 |
.wb2 |
application/x-wb2 |
.wb3 |
application/x-wb3 |
.wbmp |
image/vnd.wap.wbmp |
.wiz |
application/msword |
.wk3 |
application/x-wk3 |
.wk4 |
application/x-wk4 |
.wkq |
application/x-wkq |
.wks |
application/x-wks |
.wm |
video/x-ms-wm |
.wma |
audio/x-ms-wma |
.wmd |
application/x-ms-wmd |
.wmf |
application/x-wmf |
.wml |
text/vnd.wap.wml |
.wmv |
video/x-ms-wmv |
.wmx |
video/x-ms-wmx |
.wmz |
application/x-ms-wmz |
.wp6 |
application/x-wp6 |
.wpd |
application/x-wpd |
.wpg |
application/x-wpg |
.wpl |
application/vnd.ms-wpl |
.wq1 |
application/x-wq1 |
.wr1 |
application/x-wr1 |
.wri |
application/x-wri |
.wrk |
application/x-wrk |
.ws |
application/x-ws |
.ws2 |
application/x-ws |
.wsc |
text/scriptlet |
.wsdl |
text/xml |
.wvx |
video/x-ms-wvx |
.xdp |
application/vnd.adobe.xdp |
.xdr |
text/xml |
.xfd |
application/vnd.adobe.xfd |
.xfdf |
application/vnd.adobe.xfdf |
.xhtml |
text/html |
.xls |
application/vnd.ms-excel |
.xls |
application/x-xls |
.xlw |
application/x-xlw |
.xml |
text/xml |
.xpl |
audio/scpls |
.xq |
text/xml |
.xql |
text/xml |
.xquery |
text/xml |
.xsd |
text/xml |
.xsl |
text/xml |
.xslt |
text/xml |
.xwd |
application/x-xwd |
.x_b |
application/x-x_b |
.sis |
application/vnd.symbian.install |
.sisx |
application/vnd.symbian.install |
.x_t |
application/x-x_t |
.ipa |
application/vnd.iphone |
.apk |
application/vnd.android.package-archive |
.xap |
application/x-silverlight-app |
.zip |
application/zip |
.rar |
application/x-rar-compressed |
.7z |
application/x-7z-compressed |
- |
- |
Metadados de objeto definidos pelo usuário
Você pode adicionar os metadados definidos pelo usuário cujo nome começa com x-obs-meta- para facilitar o gerenciamento de objetos. Quando você recupera ou consulta os metadados do objeto, os metadados definidos pelo usuário adicionados serão retornados no cabeçalho da resposta. Os metadados definidos pelo usuário são limitados a 8 KB de tamanho. Para medir o tamanho total dos metadados definidos pelo usuário, somar o número de bytes na codificação UTF-8 de cada chave e valor.
As chaves de metadados definidas pelo usuário não diferenciam maiúsculas de minúsculas, mas são armazenadas em minúsculas por OBS. Os valores-chave são sensíveis a maiúsculas e minúsculas.
O seguinte é um exemplo.
1 2 3 4 5 6 7 |
PUT /key HTTP/1.1 Host: bucket01.obs.myhuaweicloud.com x-obs-meta-Test1: Test Meta1 HEAD /Key HTTP/1.1 Host: bucket01.obs.myhuaweicloud.com x-obs-meta-test1: Test Meta1 |
As chaves de metadados definidas pelo usuário e seus valores devem estar em conformidade com os caracteres US-ASCII. Se caracteres não ASCII ou irreconhecíveis forem necessários, eles devem ser codificados ou decodificados em URL ou Base64 no lado do cliente, porque o lado do servidor não realiza nenhuma decodificação.
Se houver caracteres não-US-ASCII ou irreconhecíveis em um valor e o cliente não codificar o valor, o lado do servidor irá codificar o valor em Base64 e encapsular o valor usando ?UTF-8?B?<base64(str)>?= Tome x-obs-meta-nonascii: nonasciiÄÄ como um exemplo. nonasciiÄÄ é codificado como bm9uYXNjaWnDhMOE em Base64 e a resposta retornada é x-obs-meta-nonascii: =?UTF-8?B?bm9uYXNjaWnDhMOE?=.
O seguinte é um exemplo.
1 2 3 4 5 6 7 |
PUT /key HTTP/1.1 Host: bucket01.obs.myhuaweicloud.com x-obs-meta-nonascii: nonasciiÄÄ HEAD /Key HTTP/1.1 Host: bucket01.obs.myhuaweicloud.com x-obs-meta-nonascii: =?UTF-8?B?bm9uYXNjaWnDhMOE?= |
Como usar essa função
Você pode usar console de OBS, as API, os SDK, OBS Browser+, ou obsutil para personalizar metadados de objetos.
Ferramenta |
Referência |
---|---|
Console de OBS |
|
Os SDK |
OBS suporta kits de desenvolvimento de software (os SDK) em vários idiomas. Para obter detalhes, consulte o guia do desenvolvedor correspondente na página Visão geral de SDK. |
As API |
|
OBS Browser+ |
- |
obsutil |