Ich versuche, einen Smart Contract in ein privates Netzwerk zu migrieren, das in Azure ausgeführt wird. Es funktioniert gut mit testrpc, aber wenn ich versuche, es in das (entfernte) private Netzwerk zu migrieren, erhalte ich immer die folgende Fehlermeldung:
Error: Invalid JSON RPC response: ""
at Object.InvalidResponse (C:\Users\xxx\AppData\Roaming\npm\node_modules\truffle\node_modules\web3\lib\web3\errors.js:35:16)
at XMLHttpRequest.request.onreadystatechange (C:\Users\xxx\AppData\Roaming\npm\node_modules\truffle\node_modules\web3\lib\web3\httpprovider.js:116:32)
at XMLHttpRequestEventTarget.dispatchEvent (C:\Users\xxx\AppData\Roaming\npm\node_modules\truffle\node_modules\xhr2\lib\xhr2.js:64:18)
at XMLHttpRequest._setReadyState (C:\Users\xxx\AppData\Roaming\npm\node_modules\truffle\node_modules\xhr2\lib\xhr2.js:354:12)
at XMLHttpRequest._onHttpRequestError (C:\Users\xxx\AppData\Roaming\npm\node_modules\truffle\node_modules\xhr2\lib\xhr2.js:544:12)
at ClientRequest.<anonymous> (C:\Users\xxx\AppData\Roaming\npm\node_modules\truffle\node_modules\xhr2\lib\xhr2.js:414:24)
at emitOne (events.js:96:13)
at ClientRequest.emit (events.js:188:7)
at Socket.socketErrorListener (_http_client.js:310:9)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at emitErrorNT (net.js:1278:8)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickDomainCallback (internal/process/next_tick.js:122:9)
Bisher habe ich den Vertrag erstellt, zusammengestellt und truffle.js
geändert
module.exports = {
networks: {
azure: {
network_id: xxx,
host: "xxx.westeurope.cloudapp.azure.com",
port: 8545
},
development: {
host: "localhost",
port: 8545,
network_id: "*" // Match any network id
}
}
};
Wenn ich migrate --network azure
in der Truffle-Konsole starte, tritt der Fehler auf.
Weiß jemand wie man es richtig macht? bzw. warum tritt der Fehler auf?
Danke
Ich hatte das gleiche Problem, mit dem ich es geschafft habe, dies zum Laufen zu bringen, geth 'OtherOptions' --unlock 0
wodurch die Coinbase für uns freigeschaltet wird.
PS: Das ist keine gute Praxis.
Sie können die Coinbase auch über web3.personal.unlockAccount
die DAPP selbst entsperren.
Sie müssen Ihre Münzbasis entsperren, um dies zu tun
personal.unlockAccount(eth.coinbase,"your_pass_phrase",time_in_miliseconds)
Wenn Sie die Zeit 0 (Null) angeben, wurde das Konto dauerhaft entsperrt, Sie können es manuell sperren.
Unter diesem Link finden Sie weitere Optionen zum Verwalten Ihrer Konten
Hermann Junge
curl -X POST --data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":67}' xxx.westeurope.cloudapp.azure.com
. Dadurch wird mir mitgeteilt, ob Sie Zugriff auf Ihren Server-RPC haben oder nicht.Hermann Junge
westerNeurope
, mit einem N ?quervernetzt
Error: authentication needed: password or unlock
. Wissen Sie, wie ich die Authentifizierung / das Passwort für das in der Konfigurationsdatei angegebene Konto über "von" bereitstelle?