2013-07-04 16 views
7

Sto provando a visualizzare i dati in formato JSON sul browser! qualche suggerimento .... io ho dato il mio codice javascript (.js) sottoNODEJS su semplice query SQL che preleva dal database locale e visualizza sul sistema locale


  1. Sto cercando di eseguire questo semplice query utilizzando nodeJS ma dosent sembrano funzionare Non esiste una password per il banca dati
  2. tutto quello che sto cercando di fare è visualizzare la risposta in formato JSON sul brower locali recuperati dal database mysql che è anche sul sistema locale
  3. ho un database denominato nodo e tabella dei nomi d prova già creato nel sistema locale ha solo due campi denominati id e contenuti

var http = require('http'), 
    mysql = require("mysql"); 

var connection = mysql.createConnection({ 
host: 'localhost', 
user: 'root', 
database: 'node' 
}); 

http.createServer(function (request, response) 
{ 
    request.on('end', function() 
    { 
     connection.query('SELECT id, content FROM test WHERE id IN (?, ?)',[1, 2], function(error, rows, fields) 
     { 
     response.writeHead(200); 

     response.end(JSON.stringify(rows)); 
     }); 
    }); 

}).listen(8080); 

il mio problema è :: assistente nodejs è in esecuzione ma non sono in grado di visualizzare i dati JSON sul browser ... qualsiasi suggerimento su come risolverlo!

risposta

11

Si tratta di un codice funzionante al 100% per la tua domanda! !


var http = require('http'); 
var mysql = require('mysql'); 
var connection = mysql.createConnection({ 
    host: 'localhost', 
    user: 'root', 
    database: 'node' 
}); 

console.log('MySQL Connection details '+connection); 

http.createServer(function (request, response) 
{ 
     console.log('Creating the http server'); 
     connection.query('SELECT id, content FROM test WHERE id IN (?,?)',[1, 2], function(err, rows, fields) 
     { 
       console.log('Connection result error '+err); 
       console.log('no of records is '+rows.length); 
       response.writeHead(200, { 'Content-Type': 'application/json'}); 
       response.end(JSON.stringify(rows)); 
       response.end(); 
     }); 

}).listen(8084); 

Ho anche aggiunto l'istantanea del sottostante


command prompt where the execution is done below


image1


JSON output seen in the browser below


image2

+1

sei il nodo principale – ErasmoOliveira

0

Aggiungere un tipo di contenuto nel codice:

response.setHeader("Content-Type", "application/json"); 
+0

@ Krampstudio ... ho provato ma ancora nessun risultato altre soluzioni? ..... il browser continua a caricare ma alla fine scade! –

+0

cosa mostra 'console.log (JSON.stringify (rows)))'; ? – krampstudio

+0

questo semplice test funziona: 'var http = require ('http'); http.createServer (funzione (richiesta, risposta) { request.on ('end', function() { \t \t risposta.writeHead (200); \t \t response.end ("{'ok': true}"); }); }). Listen (4000); ' – krampstudio

Problemi correlati