Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

155
Visualizações
Publicar en la API de Twitter usando nextjs, publicar tweets mientras no se solicita el sitio web

Estado actual: actualmente estoy usando next.js para crear una aplicación web. Me gustaría que esta aplicación web también publicara en mi cuenta de Twitter. Ya he creado una cuenta de desarrollador en Twitter y una API en nextjs. Llamar a la API activará la solicitud de publicación y creará una publicación en mi cuenta de Twitter ya que toda la autenticación está configurada.

Lo que me gustaría: Me gustaría que mi cuenta publique un tweet cada 24 horas, así que digamos todos los días a las 5 de la mañana (mi hora local). Necesitaría que se publique este tweet, también cuando nadie solicite el sitio web. Desafortunadamente, no he descubierto cómo configurar esto todavía. Cualquier ayuda es apreciada.

Estuve pensando en usar getStaticProps con la función de revalidación de nextjs, pero me di cuenta de que cuando nadie solicita la página web, todavía no funciona. Incluso cuando el código se ejecuta en el lado del servidor.

Así es como se ve actualmente el código en mi API:

 import type { NextApiRequest, NextApiResponse } from 'next' import Twitter from 'twitter' export default async function postTweet(req: NextApiRequest, res: NextApiResponse){ const client = new Twitter({ consumer_key: process.env.TWITTER_CONSUMER_KEY ?? "", consumer_secret: process.env.TWITTER_CONSUMER_SECRET ?? "", access_token_key: process.env.ACCESS_TOKEN_KEY ?? "", access_token_secret: process.env.ACCESS_TOKEN_SECRET ?? "", }); client.post( 'statuses/update', { status: message + `(${currentDate})` }, function (error, tweet, response) { if (error) throw error; // console.log(tweet); // Tweet body. // console.log(response); // Raw response object. } ); }

¡Cualquier idea de cómo podría realizar esto es bienvenida!

about 4 years ago · Santiago Gelvez
1 Respostas
Responde à pergunta

0

es muy buena pregunta. Puede lograr esto configurando un CRON JOB . Es una forma de decirle al servidor que ejecute una tarea específica con un intervalo de tiempo o en un momento específico de un día/semana/mes, etc.

Si desea usar GitHub Actions, tiene una función CRON JOB, puede leer más aquí https://vercel.com/docs/concepts/solutions/cron-jobs Puede generar la expresión cron https://crontab.cronhub.io / como p. ej.: para todos los días a las 5 a. m.: 0 5 * * *

 name: tweet-at-morning on: schedule: - cron: '0 5 * * *' jobs: cron: runs-on: ubuntu-latest steps: - name: Call our API route run: | curl --request POST \ --url 'https://yoursite.com/api/cron' \ --header 'Authorization: Bearer ${{ secrets.API_SECRET_KEY }}'

De lo contrario, puede usar una biblioteca de nodos para hacer una cola de trabajos. Encontré Bull.js https://github.com/OptimalBits/bull esta biblioteca como la más fácil y confiable para crear un servidor de trabajo.

about 4 years ago · Santiago Gelvez Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda