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

265
Visualizações
Express Swift Date().timeIntervalSince1970 to Firebase Epoch Time

Seguí diferentes respuestas de aquí y aquí .

Estoy empezando a aprender Cloud Tasks desde aquí . En esa publicación de blog, Doug dice "Lo que quiero es que expirationAtSeconds sea el tiempo de vencimiento expresado en epoch segundos ".

Quiero que la tarea elimine la publicación cuando se establezca ese tiempo. En mi aplicación iOS, creo una publicación que caduca en un momento específico:

 let timeStamp = Date().timeIntervalSince1970 let postDate: Date = Date(timeIntervalSince1970: timeStamp) var expirationDate: Date? = Calendar.current.date(byAdding: .hour, value: +24, to: postDate) guard let exp = expirationDate else { return } let expiresAt = exp.timeIntervalSince1970 dict.updateValue(expiresAt, forKey: "expiresAt") dict.updateValue(timeStamp, forKey: "postDate") // other values ... ref.updateChildValues(dict)

lo que me da un valor de base de datos como:

 posts some_post_Id -"expiresAt": 1632627680.340107 // other values ...

En mi función de nube, quiero la fecha expiresAt , que es un Double expresado en Epoch segundos. No estoy seguro si debo usar expDate1 , expDate2 , expDate3 o expDate4 :

 exports.onCreatePost = functions.database.ref('/posts/{postId}').onCreate((snapshot, context) => { const post = snapshot.data(); const expiresAt = snapshot.child("expiresAt").val(); const expirationDate = expiresAt.valueOf(); // 1632627680.340107 var expDate1 = DateTime.fromMillisecondsSinceEpoch(expirationDate * 1000) var expDate2 = DateTime.fromMicrosecondsSinceEpoch(expirationDate * 1000000) var expDate3 = DateTime.fromMicrosecondsSinceEpoch(expirationDate.microsecondsSinceEpoch) var expDate4 = expirationDate.toDate() const expirationAtSeconds = either expDate1, expDate2, expDate3, or expDate4 // continue on with the rest of the code ... });
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

De mi pregunta, ninguno de los métodos DateTime anteriores funcionó para mí porque seguía recibiendo un error TypeError: Cannot read property 'DateTime' of undefined .

Tuve que usar una new Date(expirationDate * 1000) y obtuve la conversión a epoch segundos desde aquí

Código:

 const functions = require("firebase-functions"); const admin = require('firebase-admin'); admin.initializeApp(); exports.onCreatePost = functions.database.ref('/posts/{postId}').onCreate((snapshot, context) => { const post = snapshot.data(); const expiresAt = snapshot.child("expiresAt").val(); const expirationDate = expiresAt.valueOf(); // 1632627680.340107 const expDate = new Date(expirationDate * 1000); // <--------Here const expirationAtSeconds = expDate.getTime()/1000.0; // <-------- this will be epoch seconds conversion console.log("expDate: " + expDate + " | expirationAtSeconds:" + expirationAtSeconds); // continue on with the rest of the code ... });
about 4 years ago · Juan Pablo Isaza 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