There is no way as far as I can tell for node.js servers to throw thrift exceptions.
I have made a patch to allow it to throw exceptions. It lets the node.js server implementation give params directly to the result object, thereby being able to specify the exception. It doesn't affect normal (non exception) return data.
Test case: https://gist.github.com/1151782
Install thrift module "npm install thrift", generate thrift "thrift --gen js:node test.thrift" and run server then client.