node js using express and restify together in one app

express, node.js, restify

Solution

For all intents and purposes restify and express can't coexist in the same node process, because for unfortunate reasons, they both try to overwrite the prototype of the http request/response API, and you end up with unpredictable behavior of which one has done what. We can safely use the restify client in an express app, but not two servers.

Problem

I am using restify building apis, it works great. But I need to render some web pages as well in the same application. Is it possible I can use express and restify together in one application? this is the code for restify server in app.js ``` var restify = require('restify'); var mongoose = require('mongoose'); var server = restify.createServer({ name : "api_app" }); server.use(restify.queryParser()); server.use(restify.bodyParser()); server.use(restify.CORS()); mongoose.connect('mongodb://localhost/db_name'); server.get('/', routes.index); server.post('/api_name', api.api_name); server.listen(8000 ,"localhost", function(){ console.log('%s listening at %s ', server.name , server.url); }); ``` how do I create express server in the same app.js? Thanks

Original source