-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Document how to set up ENS for non-mainnet addresses #425
Comments
I am having this same problem. Below is some code that works on mainnet but not rinkeby. The documentation of how to set up geth is not sufficiently detailed to get it to work. The docs describe what I think is a local server, and I don't know how to run one.
|
Hey @boxydog. The docs could be a bit more clear for other cases but the important piece here is that if you are seeing the extradata error, injecting the Please update here if that resolves it for you or if you run into any other issues. |
I appreciate your response. I have been unable to get this to work. If I look at https://web3py.readthedocs.io/en/stable/middleware.html#geth-style-proof-of-authority, it says:
If I add those two lines after The doc I linked additionally has:
But I don't want to run a geth node. So, I am still stuck. |
This issue hints that there may be an ENS registry somewhere for Rinkeby, but I don't know what that means or how to configure it. I am saying that a complete and working example documented somewhere would really help, instead of just fragments. |
Additionally, if I try
I just get an error.
Pretty sure it's expecting something running and configured. We want to run our web3.py on Heroku, it's not clear to me how to even run a geth server at all, let alone on Heroku. cc @fselmo |
Can ENS lookups even differ between mainnet and rinkeby? Perhaps I should be doing ENS lookups on mainnet even when our app is using rinkeby for everything else. |
Hey @boxydog thanks for the updates. It looks like ens = ENS.fromWeb3(w3)
ens.web3.middleware_onion.inject(geth_poa_middleware, layer=0)
the_ens = ens.name(
ChecksumAddress('0x5B206324...')
) This should get you unstuck for now but we can definitely use a documentation improvement around some of this. I will take this into account when we update the docs. Thanks again. |
Thanks very much for your response. I still get the same error. Here is all the code (that still throws the error) after the
|
Also, here is my version:
|
@boxydog yes please copy exactly what I wrote. You need |
My apologies, I didn't see that difference. Yes, now it doesn't throw an error. It returns Thanks for your help! |
What was wrong?
No documentation available on using ENS names on non-mainnet. From #342
How can it be fixed?
Write docs showing how to set up ENS for other networks.
Bonus: Get the chain ID from the client and infer the appropriate ENS registry address.
The text was updated successfully, but these errors were encountered: