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 نى تۈگۈننىڭ ھەقىقىي ئاخىرلاش نۇقتىسى قىلىپ ساقلاڭ. خەرىتىدىكى قىممەت ۋاسىتىچىنى ئاتايدۇ. رۇخسەت قىلىنغان ئاممىۋى پروكسى يولىدىكى ئاممىۋى RPC تۈگۈنى ئۈچۈن، HTTP پروكسى تىزىملىكى ئىككى مىسالنىڭ ھەر بىرىدە HTTP پروكسى قىممەتلىرىگە نامزات تەمىنلەيدۇ.

ئاسىنخرون تەمىنلىگۈچى ئۇنىڭ ئورنىغا URL قىممىتى بار بىرلىك proxy نى ئىشلىتىدۇ:

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 تەمىنلىگۈچىنىڭ ئۆزىنىڭ توشۇش كۆرۈنمە يۈزى بار.

مۇناسىۋەتلىك ماقالىلەر