I'm getting this problem when utilising Remix, and when utilising my DApp it comes out that Metamask is trying to get my user to switch to an Alchemy RPC. Any reasons why? The big issue is that it affects the entire user experience using Metamask because it quite literally becomes inoperable because the user's IP Address is being rate limited to a ridiculously low value.
Any pointers here
inpage.js:1 MetaMask - RPC Error: Non-200 status code: '429' {code: -32603, message: "Non-200 status code: '429'", data: {…}}
(anonymous) @ inpage.js:1 (anonymous) @ inpage.js:17 _runReturnHandlers @ inpage.js:17 _processRequest @ inpage.js:17 await in _processRequest (async) _handle @ inpage.js:17 handle @ inpage.js:17 _rpcRequest @ inpage.js:1 (anonymous) @ inpage.js:1 send @ inpage.js:1 _callee2$ @ 824.0.31.2.1678122538092.js:1 tryCatch @ polyfills.0.31.2.1678122538092.js:1 invoke @ polyfills.0.31.2.1678122538092.js:1 (anonymous) @ polyfills.0.31.2.1678122538092.js:1 asyncGeneratorStep @ main.0.31.2.1678122538092.js:1 _next @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 sendAsyncInternal @ 824.0.31.2.1678122538092.js:1 (anonymous) @ 824.0.31.2.1678122538092.js:1 sendAsync @ 824.0.31.2.1678122538092.js:1 callPluginMethod @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 __awaiter @ main.0.31.2.1678122538092.js:1 queue.callMethod @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 __awaiter @ main.0.31.2.1678122538092.js:1 run @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 addRequest @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 fulfilled @ main.0.31.2.1678122538092.js:1 Promise.then (async) step @ main.0.31.2.1678122538092.js:1 fulfilled @ main.0.31.2.1678122538092.js:1 Promise.then (async) step @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 __awaiter @ main.0.31.2.1678122538092.js:1 callMethod @ main.0.31.2.1678122538092.js:1 tslib_1.__awaiter.plugin.call @ main.0.31.2.1678122538092.js:1 _callee3$ @ 824.0.31.2.1678122538092.js:1 tryCatch @ polyfills.0.31.2.1678122538092.js:1 invoke @ polyfills.0.31.2.1678122538092.js:1 (anonymous) @ polyfills.0.31.2.1678122538092.js:1 asyncGeneratorStep @ main.0.31.2.1678122538092.js:1 _next @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 sendAsync @ 824.0.31.2.1678122538092.js:1 u.send @ 8004.0.31.2.1678122538092.js:1 u @ 8004.0.31.2.1678122538092.js:1 n @ 8004.0.31.2.1678122538092.js:1 _callee2$ @ 824.0.31.2.1678122538092.js:1 tryCatch @ polyfills.0.31.2.1678122538092.js:1 invoke @ polyfills.0.31.2.1678122538092.js:1 (anonymous) @ polyfills.0.31.2.1678122538092.js:1 asyncGeneratorStep @ main.0.31.2.1678122538092.js:1 _next @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 (anonymous) @ main.0.31.2.1678122538092.js:1 _updateChainContext @ 824.0.31.2.1678122538092.js:1 (anonymous) @ 824.0.31.2.1678122538092.js:1 824.0.31.2.1678122538092.js:1 Error: Returned error: {"jsonrpc":"2.0","error":"Non-200 status code: '429'","id":430291079316070} at Object.ErrorResponse (8004.0.31.2.1678122538092.js:1:11884091) at 8004.0.31.2.1678122538092.js:1:11883577 at _callee3$ (824.0.31.2.1678122538092.js:1:2513756) at tryCatch (polyfills.0.31.2.1678122538092.js:1:312145) at Generator.invoke [as _invoke] (polyfills.0.31.2.1678122538092.js:1:316096) at Generator.next (polyfills.0.31.2.1678122538092.js:1:313284) at asyncGeneratorStep (main.0.31.2.1678122538092.js:1:278212) at _next (main.0.31.2.1678122538092.js:1:278523)
The impact is across all the user's browsers as it's IP based in other words my user can no longer access the blockchain using Metamask.