Ethereum - Interagir avec le contrat déployé

Vous êtes maintenant prêt à interagir avec le contrat que vous avez déployé. Revenez sur le bureau MyEtherWallet et cliquez sur l'onglet "Interagir avec le contrat" ​​comme indiqué dans la capture d'écran ci-dessous -

Collez l'adresse du contrat que vous avez précédemment copiée dans le “Contract Address”champ. Vous devez également coller le“ABI / JSON Interface” du contrat sur l'écran ci-dessus.

Pour obtenir le ABI, allez au Remix et cliquez sur la ABI bouton comme indiqué dans la capture d'écran ci-dessous.

L'interface ABI / JSON sera copiée dans le presse-papiers. Collez-le dans votre éditeur préféré pour examiner l'interface générée, qui est illustrée ci-dessous -

ABI / JSON Interface
[
   {
      "constant": false,
      "inputs": [
         {
            "name": "newDeposit",
            "type": "uint256"
         }
      ],
      "name": "send",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
   },
   {
      "inputs": [
         {
            "name": "initialAmount",
            "type": "uint256"
         },
         {
            "name": "initialValue",
            "type": "uint256"
         }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "constructor"
   },
   {
      "constant": true,
      "inputs": [],
      "name": "getAmount",
      "outputs": [
         {
            "name": "",
            "type": "uint256"
         }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
   },
   {
      "constant": true,
      "inputs": [],
      "name": "getBalance",
      "outputs": [
         {
            "name": "",
            "type": "uint256"
         }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
   }
]

Après avoir collé ce JSON dans le MyEtherWallet interface, vous remarquerez que le bouton ACCESS sous l'interface JSON est maintenant activé, comme indiqué ci-dessous -

Cliquez sur Access bouton pour accéder au contrat.

En cliquant sur le Access, l'adresse du contrat et la liste déroulante de sélection de fonction apparaîtront à l'écran comme dans l'éditeur Remix. Ceci est montré dans la capture d'écran ci-dessous -

Vous pouvez vérifier les différentes fonctions du contrat comme dans le cas du déploiement Remix. Notez que le contact est désormais déployé sur une Blockchain Ganache externe. Vérifier lagetAmountfonction; vous obtiendrez la valeur Amount de zéro et legetBalance affichera un solde de 1000.

Maintenant, essayez d'envoyer de l'argent. Il vous présentera untexteditcontrôle pour saisir le montant. Lorsque vous rédigez le contrat, du «gaz» sera utilisé et il vous sera demandé de confirmer la transaction avant de l'écrire dans la Blockchain. La transaction serait exécutée dans un court laps de temps en fonction du timing de minage défini par vous sur le serveur Ganache. Après cela, vous pouvez réexaminer levalue et le amount champs du contrat pour vérifier que ceux-ci sont bien modifiés.

Vous pouvez maintenant examiner le bureau Ganache pour voir les transactions que vous avez effectuées jusqu'à présent. Un exemple de sortie est illustré ci-dessous -

Jusqu'à présent, vous étiez à la fois le créateur du contrat et l'exécuteur testamentaire. Cela n'a pas beaucoup de sens, car vous vous attendez à ce que d'autres utilisent votre contrat. Pour cela, nous allons créer un autre client pour notre Ganache Blockchain et envoyer de l'argent du nouveau compte n ° 2 au créateur du contrat sur le compte n ° 1.