Visualizza i risultati della richiesta GET nel browser utilizzando NodeJS
Sep 22 2020
Sono un nuovo programmatore di nodejs. Nel mio studio, voglio visualizzare i dati nel browser dopo aver salvato i dati nella raccolta mongodb.
Sono in grado di salvare un dato in mongodb, ma non posso mostrare o visualizzare i dati nel browser come prevedo che sia
Dopo l'invio, posso salvare i dati in DB, ma vorrei entrambi
visualizzare nel browser i dati PIÙ RECENTI (in base alla data) salvati / inseriti in DB o
la temperatura ottenuta dal sito web di origine
Questo è lo snippet di codice
const express = require('express');
const dotenv = require("dotenv").config();
const address = process.argv[2];
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const app = express();
//INSERT TO MONGO DB
//connect to mongo db
mongoose.connect('mongodb://localhost/weathertest2');
mongoose.Promise = global.Promise;
//create weather schema
const WeatherSchema = new Schema({
location:{
type: String
},
temperature:{
type: String
},
observationTime:{
type: String
}
});
const Weather = mongoose.model('weather', WeatherSchema);
// post request
app.post('/new', function(req, res){
new Weather({
location : req.body.location,
temperature: req.body.temperature,
observationTime : req.body.observationTime
}).save(function(err, doc){
if(err) res.json(err);
else res.send(req.body.location);
});
});
// listen for request
app.listen(process.env.port || 9000, function(){
console.log('now listening for testing request');
});
app.use(express.static('public'));
Risposte
r7r Sep 22 2020 at 11:52
Ci sono un paio di cose: -
- Quando apri un URL nel browser è una richiesta GET (leggi di più sui metodi HTTP)
- Nel tuo codice non c'è un metodo Get (almeno non in quello che hai condiviso)
- È necessario un frontend per utilizzare questa API POST e restituire il risultato. 4) Se non si desidera Frontend, è possibile utilizzare il metodo GET e reindirizzarlo una volta che il salvataggio in Mongo è stato eseguito nel metodo POST (questo è per l'apprendimento e può essere utilizzato in caso di utilizzo)