Dans l'article précédent "Une astuce vous apprend à déployer et exécuter node en utilisant iis dans Node.js (avec code)", je vous ai présenté comment utiliser iis pour déployer et exécuter node. L'article suivant vous présentera le développement du plug-in frontal du portefeuille Pamplemousse blockchain EOS. Jetons un coup d'œil.
Installation et utilisation
npm i scatterjs-core scatterjs-plugin-eosjs eosjs -D //main.js import ScatterJS from "scatterjs-core"; import ScatterEOS from "scatterjs-plugin-eosjs"; import Eos from "eosjs"; ScatterJS.plugins(new ScatterEOS());
Chaîne réseau
// EOS公链(正式环境) let main = { protocol: "https", blockchain: "eos", host: "nodes.get-scatter.com", port: 443, chainId: "aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e906", }; // 测试链 (就是用来测试的) let jungle2 = { protocol: "http", blockchain: "eos", host: "jungle2.cryptolions.io", port: 80, chainId: "e70aaab8997e1dfce58fbfac80cbbb8fecec7b99cf982a9444273cbc64c41473", };
Débogage et configuration
D propre chargement par-dessus le mur Installation du plug-in scatter
. scatter
插件安装。
1、打开scatter
---setting
--network
---新建把jungle2
的信息填到对应的位置,(取名随便取,jungle2
)--保存
2、生成秘钥对,一键生成私钥和公钥
生成秘钥对的地址https://eostea.github.io/eos-generate-key/
3、新建测试账号,需要填入刚才的公钥,账号名是z-a
,1-5
长度 12 位组合
新建测试账号的地址https://monitor.jungletestnet.io/#account
4、充值,账号建立成功之后莫有钱, 可以先充值 100 块。测试的时候省着点用
充值的地址http://monitor.jungletestnet.io/#faucet
5、测试链上的账号建好之后,打开scatter
---身份---新建,选择刚才建立的network
=> jungle2
,然后选择对应的账号。点导入---保存
这样scatter
scatter
---setting
--network
---new et remplissez les informations de jungle2</ code> Accédez à l'emplacement correspondant (nommez-le comme vous le souhaitez, <code>jungle2
) --Enregistrez 2. Générez une paire de clés secrètes, générez une clé privée et une clé publique en un seul clic
Le. adresse de génération de la paire de clés secrètes https ://eostea.github.io/eos-generate-key/
3 Pour créer un nouveau compte de test, vous devez maintenant renseigner la clé publique. z-a
,1-5
Combinaison à 12 chiffres
L'adresse du nouveau compte test https://monitor.jungletestnet.io/#account
4. Rechargez. Si vous n'avez pas d'argent une fois le compte créé avec succès, vous pouvez d'abord recharger 100 yuans. Lors des tests, économisez en utilisant l'adresse de recharge
http://monitor.jungletestnet.io/#faucet
Le plug-in5 Une fois le compte sur la chaîne de test créé, ouvrez
scatter
--. -Identité---Nouveau, sélectionnez leréseau
=>jungle2
que vous venez de créer, puis sélectionnez le compte correspondant. Cliquez sur Importer---Enregistrer
scatter
est maintenant configuré. Vous pouvez vous développer avec bonheur. Créer un scatter
ScatterJS.scatter.connect("app").then((connected) => { if (!connected) return false; let scatter = ScatterJS.scatter; //这里就是 window.ScatterJS = null; window.scatter = null; //通过两种方式拿到eos 对象 // this.eos = Eos({ httpEndpoint: '', signatureProvider: ScatterJS.scatter.eosHook(jungle2) }); this.eos = scatter.eos(jungle2, Eos, { expireInSeconds: 60 }); //如果授权成功,则可以拿到用户相关信息 if (scatter.identity) { this.account = scatter.identity.accounts.find( (x) => x.blockchain === "eos" ); } });
Autorisation et désautorisation
🎜//授权 const requiredFields = { accounts: [jungle2] }; scatter .getIdentity(requiredFields) .then(() => { //分别拿到用户信息 和 eos 对象 this.account = scatter.identity.accounts.find( (x) => x.blockchain === "eos" ); this.eos = scatter.eos(jungle2, Eos, { expireInSeconds: 60 }, "https"); }) .catch((res) => {}); //退出 scatter.forgetIdentity().then((id) => { this.account = null; this.eos = null; });
//取币种相关信息 let config = { account: "xxx", //账号名称 code: "eosio.token", //合约名称 symbol: "ETH", //币种 }; eos.getCurrencyBalance(config).then((e) => { console.log(e); }); //取用户相关信息 eos.getAccount({ account_name: "xxx" }).then((res) => { // console.log(res) let totoal = res.core_liquid_balance; //余额 let cpu = res.cpu_limit; //CPU let net = res.net_limit; //NET }); //发起转账 // eos.transfer('发送方帐号', '接收方帐号', '0.3000 DEV','memo', options, callback) eos .transfer(account.name, user, `${coin} EOS`, memo, transactionOptions) .then((trx) => { // That's it! console.log(`Transaction ID: ${trx.transaction_id}`); //有transaction_id 就代表转账成功了 }) .catch((res) => {}); //还可以使用对象 eos.transfer({ from: "发送方帐号", to: "接收方帐号", quantity: "0.1000 DEV", memo: "备注", callback, });
// 获取Table行数据 eosjs.getTableRows({"scope":'合约名字', "code":'合约名字', "table":"game", "json": true},callback) //执行合约上的函数 eos.contract("合约名字").then(actions => { //actions随便起的变量名 actions.test('hello', { //test是方法名, 'hello'是该actions合约test方法的参数 authorization: [{actor:'lilei'}] //lilei是建立该合约的用户 }).then(result => { console.log(result); });
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!