Ich möchte solidity im Browser kompilieren. web3
verfügt über veraltete compile()
Funktionen, sodass Sie nicht web3.eth.compile.solidity()
mehr anrufen können.
Ich habe es versucht, browserify
require('solc') / require('solc/wrapper')
damit ich versuchen kann, auf Kompilierungsfunktionen zuzugreifen, aber es scheint Probleme zu geben.
Ich habe ein Projekt namens browser-solc gefunden, das dies tut , aber es wurde zuletzt vor einem Jahr aktualisiert, und ich bin mir nicht sicher, ob ich mich darauf verlassen möchte.
Eine Option besteht darin, einfach einen Endpunkt zu erstellen und ihn serverseitig auszuführen und das Ergebnis an den Benutzer zur Verwendung in der intelligenten Vertragsbereitstellung zurückzugeben.
Alle Gedanken oder Lösungen zu diesem Thema sind willkommen.
Für die lokale Entwicklung kleiner Nebenprojekte habe ich den Online- Compiler remix verwendet .
Als das Projekt voranschritt, begann ich, diese Berechnung serverseitig mit der von mir verwendeten Ethereum-Implementierung durchzuführen: EthereumJ .
In meinem Fall wollte ich den Vertrag nur einmal erstellen, da er sich nicht ändern würde. Ihr spezifischer Anwendungsfall bestimmt wahrscheinlich, wo die Binärdateien erstellt werden.
Ich würde Sie in die Richtung von solc-js verweisen . Es funktioniert hervorragend für die clientseitige Kompilierung imo.
Trüffel ist, wie ich es mache.
npm i truffle
Und es hat seine eigene Geth-Engine, sodass Sie testrpc nicht installieren müssen, damit es funktioniert. Mehr Infos hier: https://github.com/trufflesuite/truffle
Malone