✅ Notícias, temas e plug-ins da WEB e do WordPress. Aqui compartilhamos dicas e as melhores soluções para sites.

Solicitações Remotas com wp_safe_remote_get

4

Ontem, compartilhei um post de como usar wp_remote_get, mas deixei de fora uma função alternativa: wp_safe_remote_get. O objetivo original era usar o primeiro post para mostrar:

  1. O que a função original aceita,
  2. Como usar a função original,
  3. O que a função original retorna,
  4. Como uma implementação se parece.

E então eu ia dar uma olhada wp_safe_remote_get. Mas há um desafio: tenho amigos inteligentes. Pouco depois de publicar o post, recebo uma resposta de Roy :

Obrigado, Ruy! (Certifique-se de dizer "Oi!" para ele. 🙂

Mas falando sério, a continuação do post de ontem é exatamente isso: wp_safe_remote_get. E é como determinar a diferença nas duas funções e quando você usaria uma sobre a outra.

wp_safe_remote_get

Direto dos documentos da API, aprendemos :

Essa função é ideal quando a solicitação HTTP está sendo feita para uma URL arbitrária. A URL é validada para evitar redirecionamentos e solicitações de ataques de falsificação.

E semelhante ao seu homólogo, ele aceita uma URL e uma série de argumentos que podem especificar como a solicitação é feita.

Além disso, assim como wp_remote_get, ele também retorna uma matriz dos dados de resposta ou uma instância de WP_Errorse a solicitação falhar.

Usar esta função não é diferente de usar a anterior, mas levanta a questão:

Quando usamos um sobre o outro? Mais especificamente, quando usamos wp_remote_getversus wp_safe_remote_get?

Leia a fonte

Quando você se depara com uma situação como essa, a primeira coisa a fazer é ler a fonte:

  1. wp_remote_get
  2. wp_safe_remote_get

Se você ler os links acima, notará que o último rejeita os “URLs inseguros" que são determinados por wp_http_validate_url através de uma série de verificações avançadas.

Mas ainda assim, qual eu uso?

Isso ainda deixa a pergunta sem resposta, não é? Eu acho que é fácil fazer a declaração geral de que você deve sempre usar wp_safe_remote_get (ou wp_safe_remote_post, para esse assunto).

Todos os projetos são diferentes, no entanto.

Por exemplo, se você estiver trabalhando em um plug-in que será usado apenas em uma intranet e tiver controle sobre, digamos, uma lista de permissões de URL que pode ser passada para a função, não há problema em usar o primeiro.

Se, no entanto, você estiver expondo o último aos usuários, sempre use a versão segura da função.

Resumidamente

Minha regra geral é esta (e é semelhante à higienização):

Se os usuários forem interagir com a função, verifique se eles estão interagindo com a versão mais segura possível do código.

Caso contrário, muito está em risco.

Fonte de gravação: tommcfarlin.com

Este site usa cookies para melhorar sua experiência. Presumiremos que você está ok com isso, mas você pode cancelar, se desejar. Aceitar Consulte Mais informação