amqp-ts icon indicating copy to clipboard operation
amqp-ts copied to clipboard

Using amqp-ts for angular 8.0.0 throws error

Open ascoril opened this issue 5 years ago • 5 comments

When I enable amqp-ts in my angular 8.0.0 project, I am getting the following error.

ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/common.js Module not found: Error: Can't resolve 'crypto' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/common.js Module not found: Error: Can't resolve 'fs' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/transports/file.js Module not found: Error: Can't resolve 'fs' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston\transports' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/transports/http.js Module not found: Error: Can't resolve 'http' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston\transports' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/transports/http.js Module not found: Error: Can't resolve 'https' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston\transports' ERROR in ./node_modules/amqp-ts/lib/amqp-ts.js Module not found: Error: Can't resolve 'os' in 'D:\backup_projects\angular\node_modules\amqp-ts\lib' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/exception.js Module not found: Error: Can't resolve 'os' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/transports/console.js Module not found: Error: Can't resolve 'os' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston\transports' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/transports/file.js Module not found: Error: Can't resolve 'os' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston\transports' ERROR in ./node_modules/amqp-ts/lib/amqp-ts.js Module not found: Error: Can't resolve 'path' in 'D:\backup_projects\angular\node_modules\amqp-ts\lib' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/transports/file.js Module not found: Error: Can't resolve 'path' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston\transports' ERROR in ./node_modules/amqp-ts/node_modules/amqplib/lib/connection.js Module not found: Error: Can't resolve 'stream' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\amqplib\lib' ERROR in ./node_modules/amqp-ts/node_modules/readable-stream/lib/_stream_writable.js Module not found: Error: Can't resolve 'stream' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\readable-stream\lib' ERROR in ./node_modules/amqp-ts/node_modules/readable-stream/lib/_stream_readable.js Module not found: Error: Can't resolve 'stream' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\readable-stream\lib' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/logger.js Module not found: Error: Can't resolve 'stream' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/common.js Module not found: Error: Can't resolve 'stream' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/transports/http.js Module not found: Error: Can't resolve 'stream' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston\transports' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/transports/file.js Module not found: Error: Can't resolve 'stream' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston\transports' ERROR in ./node_modules/isstream/isstream.js Module not found: Error: Can't resolve 'stream' in 'D:\backup_projects\angular\node_modules\isstream' ERROR in ./node_modules/amqp-ts/node_modules/amqplib/lib/connect.js Module not found: Error: Can't resolve 'tls' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\amqplib\lib' ERROR in ./node_modules/amqp-ts/node_modules/winston/lib/winston/transports/file.js Module not found: Error: Can't resolve 'zlib' in 'D:\backup_projects\angular\node_modules\amqp-ts\node_modules\winston\lib\winston\transports'

ascoril avatar Jul 08 '20 20:07 ascoril

amqp-ts is designed to run on a server in Node.js and connect to RabbitMQ. Angular projects are designed to run in a browser. You're getting these errors because you're trying to use amqp-ts within an Angular project instead of within a Node.js project.

austin-beer avatar Jul 08 '20 21:07 austin-beer

Any suggestion for subscribing to a rabbitMQ queue in angular

ascoril avatar Jul 09 '20 12:07 ascoril

So you want to talk to RabbitMQ from a single-page application that's running in a browser?

austin-beer avatar Jul 09 '20 12:07 austin-beer

Yes, I want to make use of the push mechanism of the AMQP protocol without any pull happening. I know, we can pull the content using the RabbitMQ rest apis available or even use some sort of stomp mechanism. But what i am interested is more of using the AMQP push.

ascoril avatar Jul 09 '20 12:07 ascoril

Then I think you need to set up a server-side Node.js application. Your browser-based Angular application can talk to the Node.js application, and the Node.js application running on your server can talk to RabbitMQ. It's up to you how you want to set up the communication between your browser-based Angular application and the Node.js application. HTTP long-polling and WebSockets are two popular methods of pushing data from a server to a browser-based client.

austin-beer avatar Jul 09 '20 12:07 austin-beer