0

У кого-нибудь есть идея, почему я продолжаю получать эту ошибку, когда я делаю запрос GET на номер /display-message? { Error: Key path element must not be incomplete: [created_timestamp: ]. Разве я не устанавливаю свой ключ правильно? Вы можете просмотреть здесь бэкенд https://jarvis-hd-live-151521.appspot-preview.com/display-message?last_updated=0Как установить ключ для хранилища данных GAE?

const key = datastore.key('created_timestamp', 5689413791121408); 

app.post('/message', function (request, response) { 
    let message = request.body.Body; 
    response.send("<Response><Message>Heyyo!</Message></Response>"); 

    var d = new Date; 
    var time = d.getTime(); 

    let entity = { 
     key: key, 
     data: { 
     message: message, 
     created: time 
     } 
    }; 


    datastore.upsert(entity) 
    .then(() => { 
     console.log("Post UPDATED successfully"); 
    }); 



}); 


app.get('/display-message', function(req,res){ 

    let last_updated_time = req.query.last_updated;  


    function updateMessage(timestamp, message) { 
     var output = { 
      success: 1, 
      data: message, 
      timestamp: timestamp 
     }; 

     return res.json(output); 
    } 

    function checkMessage() { 
     console.log("Starting to check message function"); 
     var timeout; 
     clearTimeout(timeout); 

     datastore.get(key) 
      .then((entities) => { 
       let entity_data = entities[0]; 
       console.log(entity_data); 

       let message_text = entity_data.message; 
       let new_timestamp_value = entity_data.created; 

       if(!last_updated_time || last_updated_time < new_timestamp_value) { 
        updateMessage(new_timestamp_value, message_text); 
       } 
       else { 
        console.log("No new messages at this time"); 

        timeout = setTimeout(function(){ 
         checkMessage(); 
        }, 1000 * 10); //10 seconds 
       } 

      }) 
      .catch(function(){ 
       console.log("Promise Rejected"); 
       console.log(err); 
      }) 
    }; 

    checkMessage(); 

}); 

ответ

Смежные вопросы