-
Notifications
You must be signed in to change notification settings - Fork 95
Implementa Header LastModified na Api #3808
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: 3.1.x
Are you sure you want to change the base?
Conversation
|
Em vez de fazer scraping no AuditLog (o que parece um pequeno hack), talvez possamos utilizar os campos já existentes, como data_ultima_atualizacao em NormaJuridica, MateriaLegislativa, SessaoPlenaria e DocumentoAcessorio, além do campo ultima_edicao em DocumentoAdministrativo e Protocolo. O código poderia verificar se algum desses atributos está disponível e, caso esteja, ordenar por esse atributo. Se nenhum deles existir, o retorno incluiria todos os registros (ou seja, o query param last_modified seria ignorado). Isso deixaria a lógica mais simples e direta, e provavelmente atenderia bem aos clientes da API, que em geral estão interessados nas últimas modificações de documentos — e esses já têm esses campos. Claro, se fizer sentido, podemos também adicionar o campo data_ultima_atualizacao em outros models. O que acha? |
|
Olá, Peço um pouco de paciência 🙏 — estou bem enrolado nos últimos meses com uns projetos urgentes de infraestrutura interna de hospedagem do SAPL. Assim que sobrar um tempinho, reviso com calma. Aproveitando, será que dá pra dar uma olhada na parte de segurança desse PR? A gente teve alguns incidentes recentemente, então seria bom garantir que as mudanças aqui não abram nenhuma brecha ou possível backdoor que possa ser explorado |
|
Olá @edwardoliveira, tranquilo, sem pressa... sobre este comentário: #3808 (comment) sobre os tais incidentes, poderia, talvez em um email ou no telegram, me relatar o ocorrido para eu estar ciente e me prevenir também!? |
|
sobre este comentário: #3808 (comment) |
…ified sem tratamento adequado
|
Implementado a forma que verifica se no model do endpoint possui algum dos campos listados, pode adicionar novos campos se necessário na tupla default_fields_for_timestamp. |
Cria decorator externo à API que aplica nas respostas o Header LastModified.
sapl.api.view_materia._MateriaLegislativaViewSet.last_modified_funcque isola o default do decorator e calcula LastModified com base no field data_ultima_atualizacao