I am developing a NFT marketplace and I have the basic workflow set upWorkflow

Now I am wondering whether or not the client should be able to call my Ethereum node (in the picture called Blockchain) directly or over the server? For example when the user wants to sell a NFT, he signes a Transaction which calls a smart contract. This Transaction could now be broadcasted to the Blockchain directly from the client by talking to my node directly or using my server as a proxy (client -> server -> node (blockchain)).

The reason I am asking myself this question is because letting my client directly talk to my node would mean it is kinda running completely free for anyone to use. So everyone could just hit my node and use up all my bandwidth. And with the server in between I would have kind of a gate in front of the node.

Are those thoughts making sense?

  • If you're using web3, the client is already connected to a blockchain node which it uses to broadcast the transaction Commented Dec 9, 2022 at 17:54

1 Answer 1


It is generally not recommended to allow client applications to directly call your Ethereum node, as this can result in security and scalability issues.

To avoid these issues, it is generally better to use a server as a proxy between your client applications and your Ethereum node.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.