cómo consumir un nodo de servicio de descanso js en una aplicación con apache

Estoy empezando a usar node js y tengo un servicio de descanso que devuelve algunos datos que necesito mostrar en una página que se ejecuta en apache, pero puedo recuperar esos datos en mi aplicación que se ejecuta en apache.

Heres es mi código de mi servicio de descanso que funciona bien:

server.js

var express = require('express'), wine = require('./routes/wines'); var app = express(); app.configure(function () { app.use(express.logger('dev')); /* 'default', 'short', 'tiny', 'dev' */ app.use(express.bodyParser()); }); app.get('/wines', wine.findAll); app.get('/wines/:id', wine.findById); app.post('/wines', wine.addWine); app.put('/wines/:id', wine.updateWine); app.delete('/wines/:id', wine.deleteWine); app.listen(3000); console.log('Listening on port 3000...'); 

vino.js

 var mongo = require('mongodb'); var Server = mongo.Server, Db = mongo.Db, BSON = mongo.BSONPure; var server = new Server('localhost', 27017, {auto_reconnect: true}); db = new Db('winedb', server); db.open(function(err, db) { if (!err) { console.log("Connected to 'winedb' database"); db.collection('wines', {strict: true}, function(err, collection) { if (err) { console.log("The 'wines' collection doesn't exist. Creating it with sample data..."); populateDB(); } }); } }); exports.findById = function(req, res) { var id = req.params.id; console.log('Retrieving wine: ' + id); db.collection('wines', function(err, collection) { collection.findOne({'_id': new BSON.ObjectID(id)}, function(err, item) { res.send(item); }); }); }; exports.findAll = function(req, res) { db.collection('wines', function(err, collection) { collection.find().toArray(function(err, items) { res.send(items); }); }); }; exports.addWine = function(req, res) { var wine = req.body; console.log('Adding wine: ' + JSON.stringify(wine)); db.collection('wines', function(err, collection) { collection.insert(wine, {safe: true}, function(err, result) { if (err) { res.send({'error': 'An error has occurred'}); } else { console.log('Success: ' + JSON.stringify(result[0])); res.send(result[0]); } }); }); } exports.updateWine = function(req, res) { var id = req.params.id; var wine = req.body; console.log('Updating wine: ' + id); console.log(JSON.stringify(wine)); db.collection('wines', function(err, collection) { collection.update({'_id': new BSON.ObjectID(id)}, wine, {safe: true}, function(err, result) { if (err) { console.log('Error updating wine: ' + err); res.send({'error': 'An error has occurred'}); } else { console.log('' + result + ' document(s) updated'); res.send(wine); } }); }); } exports.deleteWine = function(req, res) { var id = req.params.id; console.log('Deleting wine: ' + id); db.collection('wines', function(err, collection) { collection.remove({'_id': new BSON.ObjectID(id)}, {safe: true}, function(err, result) { if (err) { res.send({'error': 'An error has occurred - ' + err}); } else { console.log('' + result + ' document(s) deleted'); res.send(req.body); } }); }); } }; 

Aquí está mi aplicación ejecutándose en apache, esto no está funcionando:

       $(document).ready(function() { $.ajax({ type: "GET", data: '{}', contentType: "application/json; charset=utf-8", url: "myrestservice:3000/wines/", dataType: "jsonp", processdata: true, success: function(data) { $('#wines').html(data); } }); });    

Pruebe res.jsonp() lugar de res.send() .