caver.ipfs
caver.ipfs
는 IPFS(행성 간 파일 시스템)와 관련된 기능을 제공하는 패키지입니다.
참고 caver.ipfs
는 caver-js v1.5.4 부터 지원됩니다.
caver.ipfs.setIPFSNode
caver.ipfs.setIPFSNode(host, port, ssl)
IPFS 노드와의 연결을 초기화합니다. 이 기능을 통해 IPFS 노드 정보가 설정되면, IPFS에 파일을 업로드하거나 IPFS에서 파일을 로드할 수 있습니다.
매개변수
이름 | 유형 | 설명 |
---|---|---|
host | string | 연결할 IPFS 노드 URL입니다. |
port | Number | 사용할 포트 번호입니다. |
ssl | boolean | true이면 https 프로토콜이 사용됩니다. 그렇지 않으면 http 프로토콜이 사용됩니다. |
리턴 값
없음
예시
> caver.ipfs.setIPFSNode('localhost', 5001, false)
caver.ipfs.add
caver.ipfs.add(data)
IPFS에 파일을 추가합니다. 업로드한 파일의 CID(콘텐츠 식별자)가 반환됩니다.
파일 경로가 전달되면 해당 경로에서 파일 내용을 로드하여 IPFS에 업로드합니다. 버퍼가 전달되면 버퍼가 IPFS에 직접 업로드됩니다.
매개변수
이름 | 유형 | 설명 |
---|---|---|
data | string | Buffer | ArrayBuffer | IPFS에 추가할 파일 또는 버퍼의 경로 문자열입니다. |
참고 Buffer
는 caver-js v1.5.5 부터 지원됩니다.
리턴 값
Promise
는 string
을 반환합니다.
유형 | 설명 |
---|---|
string | 업로드한 파일의 CID(콘텐츠 식별자)입니다. |
예시
// Adds a file with path string.> caver.ipfs.add('./test.txt')Qmd9thymMS6mejhEDZfwXPowSDunzgma9ex4ezpCSRZGwC// Adds a file with Buffer containing the contents of the file.> caver.ipfs.add(Buffer.from('test data'))QmWmsL95CYvci8JiortAMhezezr8BhAwAVohVUSJBcZcBL
caver.ipfs.get
caver.ipfs.get(hash)
유효한 IPFS 경로로 주소가 지정된 파일을 반환합니다.
매개변수
이름 | 유형 | 설명 |
---|---|---|
hash | string | 다운로드할 파일의 CID(콘텐츠 식별자)입니다. |
리턴 값
Promise
는 Buffer
를 반환합니다.
유형 | 설명 |
---|---|
Buffer | 파일 내용 입니다. |
예시
> caver.ipfs.get('Qmd9thymMS6mejhEDZfwXPowSDunzgma9ex4ezpCSRZGwC')<Buffer 74 65 73 74 20 64 61 74 61 20 66 6f 72 20 49 50 46 53>
caver.ipfs.toHex
caver.ipfs.toHex(hash)
CID(콘텐츠 식별자)를 Multihash로 변환합니다.
매개변수
이름 | 유형 | 설명 |
---|---|---|
hash | string | 변환할 CID(콘텐츠 식별자)입니다. |
리턴 값
유형 | 설명 |
---|---|
string | Multihash 문자열입니다. |
예시
> caver.ipfs.toHex('Qmd9thymMS6mejhEDZfwXPowSDunzgma9ex4ezpCSRZGwC')0x1220dc1dbe0bcf1e5f6cce80bd3d7e7d873801c5a1732add889c0f25391d53470dc3
caver.ipfs.fromHex
caver.ipfs.fromHex(hash)
Multihash에서 CID(콘텐츠 식별자)로 변환합니다.
매개변수
이름 | 유형 | 설명 |
---|---|---|
hash | string | 변환할 Multihash. |
리턴 값
유형 | 설명 |
---|---|
string | CID(콘텐츠 식별자) |
예시
> caver.ipfs.fromHex('0x1220dc1dbe0bcf1e5f6cce80bd3d7e7d873801c5a1732add889c0f25391d53470dc3')Qmd9thymMS6mejhEDZfwXPowSDunzgma9ex4ezpCSRZGwC