Imagens
Todo caminho de imagem em uma resposta do amodb carrega de https://img.amodb.dev/t/p/{size}/{file}. Os tamanhos seguem o TMDB: w92, w154, w185, w300, w342, w500, w780, w1280, h632 e original. As imagens não precisam de chave e não contam na sua taxa. A borda as guarda por 30 dias, e /3/configuration retorna as URLs base.
https://img.amodb.dev/t/p/{size}/{file}{file} é o caminho de um campo da resposta como poster_path, backdrop_path, profile_path, still_path ou logo_path. Ele já começa com /.
https://img.amodb.dev/t/p/w500/pB8BM7pdSp6B6Ih7QZ4DrQ3PmJK.jpgTamanhos
| Tamanho | Largura ou altura | Bom para |
|---|---|---|
w92 | 92 px de largura | Sugestões de busca |
w154 | 154 px de largura | Listas densas |
w185 | 185 px de largura | Grades no desktop, fotos de perfil |
w300 | 300 px de largura | Miniaturas de backdrop, Poster do OMDb |
w342 | 342 px de largura | Grades em celulares com telas de alta densidade |
w500 | 500 px de largura | Páginas de detalhes |
w780 | 780 px de largura | Pôsteres grandes, backdrops médios |
w1280 | 1280 px de largura | Backdrops em largura total |
h632 | 632 px de altura | Fotos de perfil em altura total |
original | Tamanho da fonte | Downloads e impressão |
Os pôsteres são 2:3. Defina width e height no <img> para que a página não se desloque enquanto carrega.
URLs base do endpoint de configuração
GET /3/configuration retorna a mesma estrutura do TMDB. Os clientes que montam URLs de imagem a partir dela funcionam sem mudanças.
A borda guarda /3/configuration por 24 horas, então ler uma vez por dia basta.
{
"images": {
"base_url": "http://img.amodb.dev/t/p/",
"secure_base_url": "https://img.amodb.dev/t/p/",
"poster_sizes": ["w92", "w154", "w185", "w342", "w500", "w780", "original"]
}
}const base = "https://img.amodb.dev/t/p";
const srcset = ["w185", "w342", "w500"]
.map((size) => `${base}/${size}${movie.poster_path} ${size.slice(1)}w`)
.join(", ");
const html = `<img src="${base}/w342${movie.poster_path}" srcset="${srcset}"
sizes="(min-width: 64rem) 185px, 33vw" width="342" height="513"
alt="${movie.title} poster" loading="lazy">`;Cache
As imagens ficam no cache de borda por 30 dias. Guarde o caminho do arquivo junto do seu registro e monte a URL na hora de renderizar, assim você pode trocar de tamanho depois sem novas chamadas à API.