Limite de 10 segundos para o usuário

Acalme-se, você está fazendo muitas requisições.
Por favor, tente novamente em 5 segundos.
Código de erro: user_10_secs_limit.

Eu criei um tema que usa await ajax(/t/${this.args.topic.id}.json);. Isso está sendo limitado devido a requisições excessivas. Como posso evitar isso? Notei que a restrição é marcada como um limite de nível de usuário, não um limite baseado em IP.

Você está atrás de um balanceador de carga como o Cloudflare para que o Discourse não saiba o endereço IP real do usuário?

Um grep rápido e eu não vejo user_10_secs_limit no código, exceto em uma especificação. Suspeito que possa estar relacionado ao IP, apesar do erro que você está vendo.

Aqui - Você não pode fazer grep disso :slight_smile:

error_code: \"#{error_code_identifier}_10_secs_limit\",

Vindo de discourse/lib/request_tracker/rate_limiters/user.rb at main · discourse/discourse · GitHub

@truman seu componente de tema está fazendo isso para muitos tópicos? O que exatamente você está tentando realizar? Você deve verificar se consegue combinar as chamadas, por exemplo, marcando os tópicos e depois recuperando-os por tag em uma única chamada, e/ou você deve descobrir um mecanismo de cache.

2 curtidas

Aha! Eu imaginei que estava esquecendo algo simples. . .

1 curtida

Quero buscar as reações de cada tópico para poder exibi-las na página inicial. como:
image

Você precisa serializar isso em um plugin para evitar todas essas consultas.

4 curtidas

Obtenha o repositório all-the-plugins e procure por add_to_serializer

3 curtidas

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.