SyntaxError: Unexpected token {
at Object.parse (native)
at /Users/nigel/code/webui/nodejs-api/node_modules/express/node_modules/connect/lib/middleware/json.js:75:25
at IncomingMessage.onEnd (/Users/nigel/code/webui/nodejs-api/node_modules/express/node_modules/connect/node_modules/raw-body/index.js:109:7)
at IncomingMessage.g (events.js:199:16)
at IncomingMessage.emit (events.js:104:17)
at _stream_readable.js:908:16
at process._tickCallback (node.js:355:11)
app.all(path, function(request, response) {
var turl = request.url.substring(n);
var puri = url.parse(target);
var proxy_request = http.request({port: puri.port, host: puri.hostname, method: request.method, path: turl, headers: request.headers});
proxy_request.addListener('response', function (proxy_response) {
proxy_response.addListener('data', function(chunk) {
if(this.headers['content-type'].indexOf('json') > 0) {
console.log('writing response ' + chunk);
response.write(chunk);
} else {
response.write(chunk, 'binary');
}
});
proxy_response.addListener('end', function() {
console.log('response end');
response.end();
});
response.writeHead(proxy_response.statusCode, proxy_response.headers);
});
request.addListener('data', function(chunk) {
if(chunk) {
console.log('writing to proxy ' + chunk);
proxy_request.write(chunk, 'binary');
}
});
request.addListener('end', function() {
console.log('request end');
proxy_request.end();
});
if(request._body) {
var txt = JSON.stringify(request.body);
if(txt =='{"somevalidjson":"yes"}') {
console.log('bad!!!');
}
console.log('writing body ' + txt);
proxy_request.write(txt, 'binary');
proxy_request.end();
}
});