Проект

Общее

Профиль

Exampls » История » Редакция 2

Редакция 1 (Mariyam Seidaliyeva, 30.04.2024 14:10) → Редакция 2/5 (Mariyam Seidaliyeva, 30.04.2024 14:10)

h1. Примеры 

 h3. Python Pyton 

 <pre> 
 from eth_keys import keys 
 import requests 
 msg = b'{}' 
 pk = keys.PrivateKey(b'\x01' * 32) 
 signature = pk.sign_msg(msg) 
 addr = pk.public_key.to_checksum_address() 
 verify = signature.verify_msg(msg, pk.public_key) 
 re_addr = signature.recover_public_key_from_msg(msg).to_checksum_address() 
 print(str(addr) + ' = ' + str(re_addr) + ' = ' + str(verify)) 

 URL = "https://my.h2k.me/ec/ex" 
 headers = { 
         'x-app-ec-from': addr, 
         'x-app-ec-sign-r': hex(signature.r), 
         'x-app-ec-sign-s': hex(signature.s), 
         'x-app-ec-sign-v': hex(signature.v), 
     } 
 print(headers) 
 r = requests.get(url=URL, headers=headers) 
 print(r.content) 
 data = r.json() 
 print(data) 
 </pre> 

 h3. nodejs + express 

 <pre> 
 const Web3 = require("web3"); 

 async function createECESign(req, res, next) { 
     const privateKey = '0xb7d9b51eda54d664366d74c1b1a4ed2ca9e1abed646732bfb83b141f22df3b39'     
     const rFrom = '0xA285990a1Ce696d770d578Cf4473d80e0228DF95' 
     req.conf.rFrom = rFrom 
     const msg = req.conf.data ? req.conf.data : '{}' 

     const web3 = new Web3(); 
     const sign = await web3.eth.accounts.sign(msg, privateKey) 

     req.conf.headers['x-app-ec-from'] = rFrom 
     req.conf.headers['x-app-ec-sign-r'] = sign.r 
     req.conf.headers['x-app-ec-sign-s'] = sign.s 
     req.conf.headers['x-app-ec-sign-v'] = sign.v 
     next(); 
 } 

 router.get('/test', 
     async function(req,res, next){ 
         const headers = { 
             'accept': 'application/json', 
             'content-type': 'application/json' 
         }; 
         req.conf = {} 
         req.conf.baseURL= 'https://my.h2k.me' 
         req.conf.headers = headers 
         req.conf.url = '/ece/ex' 
         req.conf.method = 'GET' 
         const body = {}; 
         req.conf.data = JSON.stringify(body); 
         next() 
     }, 
     createECESign, 
     async function(req,res){ 
         let resp = await axiosEC(req.conf) 
         let resp_data = resp.data 
         res.send(resp_data); 
     } 
 ) 
 </pre>