នៅក្នុង web3.py 7.14 HTTPProvider ប្រើ Requests រីឯ AsyncHTTPProvider ប្រើ aiohttp។ request_kwargs របស់ពួកវាទៅដល់អតិថិជន HTTP ផ្សេងៗគ្នា។

សម្រាប់ចំណុចបញ្ចប់ HTTPS JSON-RPC បែបសមកាលៈ

from web3 import Web3

client = Web3(Web3.HTTPProvider(
    rpc_url,
    request_kwargs={
        'proxies': {'https': 'http://proxy.example:8080'},
        'timeout': 20,
    },
))

រក្សា rpc_url ជាចំណុចបញ្ចប់ពិតប្រាកដរបស់ node។ តម្លៃក្នុងផែនទីបញ្ជាក់អ្នកកណ្តាល។ សម្រាប់ node RPC សាធារណៈនៅលើផ្លូវប្រូកស៊ីសាធារណៈដែលអនុញ្ញាត បញ្ជីប្រូកស៊ី HTTP ផ្តល់បេក្ខជនសម្រាប់តម្លៃប្រូកស៊ី HTTP ក្នុងឧទាហរណ៍ណាមួយ។

អ្នកផ្តល់សេវាអសមកាលជំនួសមកវិញប្រើ proxy ឯកវចនៈជាមួយតម្លៃ URL៖

from aiohttp import ClientTimeout
from web3 import AsyncHTTPProvider, AsyncWeb3

provider = AsyncHTTPProvider(
    rpc_url,
    request_kwargs={
        'proxy': 'http://proxy.example:8080',
        'timeout': ClientTimeout(total=20),
    },
)
async_client = AsyncWeb3(provider)

ការចម្លងប្រូកស៊ីទៅផ្លូវអសមកាលបង្កើតកំហុសពាក្យគន្លឹះដែលមិនបានរំពឹងទុកនៅក្នុង aiohttp។ ទាំងអក្ខរាវិរុទ្ធនិងប្រភេទតម្លៃត្រូវផ្លាស់ប្តូរ។

បិទអ្នកផ្តល់សេវាអសមកាលជាមួយ await provider.disconnect() នៅក្នុងផ្លូវសម្អាតរបស់វា។ ការកំណត់ទាំងនេះជារបស់អ្នកផ្តល់សេវា HTTP; អ្នកផ្តល់សេវា WebSocket មានចំណុចប្រទាក់ដឹកជញ្ជូនផ្ទាល់ខ្លួន។

អត្ថបទពាក់ព័ន្ធ