일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- ethers v6
- 컨트렉트 배포 자동화
- ethers type
- SBT표준
- nest.js설명
- ethers
- 프록시배포구조
- 스마트컨트렉트프록시
- git rebase
- ethers websocket
- 체인의정석
- 스마트컨트렉트 예약어 함수이름 중복
- 러스트기초
- Vue.js
- ethers typescript
- 스마트컨트렉트테스트
- 스마트 컨트렉트 함수이름 중복
- multicall
- ambiguous function description
- rust 기초
- vue기초
- 스마트컨트렉트 함수이름 중복 호출
- 러스트 기초
- chainlink 설명
- 머신러닝기초
- nestjs 튜토리얼
- 컨트렉트 동일한 함수이름 호출
- Vue
- 깃허브명령어
- 러스트 기초 학습
Archives
- Today
- Total
체인의정석
hardhat, ethers 의 ProviderError: HttpProviderError 본문
728x90
반응형
provider에 console.log를 찍어보니 HTTP provider가 로컬호스트로만 작동하고 해결이 안되고 있었다.
해당 부분을 보니 설정 문제인거 같은데 설정 파일을 바꾸고 체크를 해봐도 해결이 되지 않았다.
그래서 그냥 hardhat의 config를 사용하는 대신 수동으로 모두 지정해 주기로 하였다.
import { BigNumber, BigNumberish, Signer } from "ethers";
import { ethers } from "hardhat";
export const basicSettings = async (): Promise<[ethers.Signer, string]> => {
const provider = new ethers.providers.JsonRpcProvider("RPC_URL");
const wallet = new ethers.Wallet(process.env.PRIVATE_KEY);
const signer = wallet.connect(provider);
const address = await signer.getAddress();
return [signer, address]
}
이걸 uitls에서 만들고
scripts에서는 아래와 같이 정의해서 signer와 address를 가져와서 사용하였다.
const [signer, address] = await basicSettings();
이런식으로 하니 트랜잭션도 잘 되고 더이상 에러도 나지 않았다.
728x90
반응형
'블록체인 > Ethers & web3' 카테고리의 다른 글
ethers v5 -> v6 문법 (0) | 2024.04.15 |
---|---|
ethers 6버전 이상에서 ethers.utils가 인식이 안되는 에러 (0) | 2023.12.24 |
Module '"hardhat"' has no exported member 'ethers' 에러 해결법 (0) | 2023.07.21 |
ethers & typechain 사용해서 타입 정의하기 (0) | 2023.07.20 |
hardhat, ethers, typescript 에서 서명정보 및 공개키 등록 및 가져오기 (getSigners, getContractAt) (0) | 2023.07.20 |
Comments