Como detectar que um leitor de feeds acessa minha página?
-
08-07-2019 - |
Pergunta
Eu gostaria de servir um conteúdo diferente de um único URL, dependendo se o usuário é um navegador ou um leitor de RSS (evitando assim um URL example.com/feed). Assim www.example.com/posts retornará um (X) HTML página a um navegador e um feed RSS para um leitor de feeds.
O que a forma como a arquitectura mais adequada de realizar isso?
PS Como é que para uma pergunta de bola macia ...:)
Solução
Eu não tenho certeza que é possível em todas as situações. Considere um usuário que usa leitor de RSS do Safari, assumindo que usa a corda mesmo identificador navegador ao fazer o download de um feed RSS, como você dizer aos dois modos separados?
Eu realmente voltar a considerar esta abordagem, não há nada de errado com um URL do feed separado.
Outras dicas
Deixe-me apresentar-lhe o User-Agent cabeçalho HTTP . Ele irá conter uma string de identificação para o cliente que acessa sua página. Ele pode ser falsificado, mas você simplesmente não pode ser 100% de certeza se é um leitor de RSS ou um navegador.
Além disso, leitores de RSS pode enviar Aceitar cabeçalhos para RSS tipos de conteúdo, que você pode usar para implementar conteúdo negociação ( MultiViews no Apache).
Mas, como não há nenhuma maneira certa do fogo, é melhor deixar no lado de servir HTML mais frequentemente do que RSS, ou melhor ainda, fazer como todo mundo faz e fornecer uma alimentação diferente para RSS.