일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 러스트 기초 학습
- vue기초
- ethers websocket
- cloud hsm 서명
- redux toolkit 설명
- 오블완
- Vue.js
- cloud hsm
- ethers typescript
- SBT표준
- 스마트 컨트렉트 함수이름 중복
- 러스트 기초
- redux 기초
- 컨트렉트 동일한 함수이름 호출
- cloud hsm 사용하기
- ethers v6
- Vue
- 티스토리챌린지
- 러스트기초
- rust 기초
- 체인의정석
- 스마트컨트렉트 함수이름 중복 호출
- 계정추상화
- erc4337 contract
- erc4337
- 스마트컨트렉트 예약어 함수이름 중복
- git rebase
- ethers type
- ambiguous function description
- 머신러닝기초
- Today
- Total
목록전체 글 (526)
체인의정석
truffle을 이용하여 배포하거나 open-zeppelin의 표준에 맞춰서 스마트컨트렉트를 테스트/배포해야하는 경우 erc20 파일을 일일히 가져오기 보다는 www.npmjs.com/package/@openzeppelin/contracts @openzeppelin/contracts Secure Smart Contract library for Solidity www.npmjs.com 다음과 같은 npm 라이브러리를 사용하면 더 편하다.
우선 truffle 배포 시 하나의 파일만 배포하는것은 다음과 같이한다. truffle은 오랜만에 써보는데 배포까지는 무조건 truffle로 하는게 편한것 같다. ropsten testnet에 배포하는 법 바뀌는 solidity code가 있을 경우 truffle compile 후에 배포한다. truffle migrate -f 4 --to 4 --network ropsten 이렇게 되면 4번의 migration파일만 migrate된다. 배포가 끝나게 되면 build 경로 아래에 있는 contracts안에 배포 정보가 나오게 된다. .json 파일로 되어 있는데 이걸 그대로 복사하면 된다. 이때 유의해야 할 점은 const fs = require('fs'); const contractABI = JSON.p..
express generator 를 다음과 같이 npx로 실행하니 해결이 되었다. npx express-generator stackoverflow.com/questions/23002448/express-command-not-found Express command not found For some reason after installing Express globally on my machine with npm install -g express if I cd into a directory and try to run express I get the following error: express: command not found. ... stackoverflow.com

1. 파일 첨부기능 다음과 같이 파일을 올릴시 파일의 해시값을 바로 보여주는 기능을 연결하였다. 일단 이 기능을 하고 난 후 블록체인에 저장버튼을 양쪽 사용자가 같이 누르게 되면 DB값을 변화시켜 블록체인에 저장시키게 만드는 식으로 개발할 예정이다. $("#contract").change(function(e){ e.preventDefault() if($("#contract").val()){ let form = $("#add_board")[0]; console.log("form",form); let formData = new FormData(form); console.log("formData",formData); // formData.append("bidx",$("#bidx").val()) $.ajax({..

1. 정보 조회해오는 화면을 2개로 안만들고 1개로 만든 후 상황에 따라서 다르게 뜨게 만들어 가는 중이므로, append가 연속해서 일어나는 오류가 일어났다. 이를 해결하기 위해 $("#contract_view_check").val("Y");를 추가하여 해결하였다. 서버사이드 function getboardInfo(args){ console.log("getboardInfo",args); $.ajax({ type: "POST", url : 'tech/getboardInfo', data : {"bidx" :args.item.board_idx}, success: function(r){ if(r.success){ console.log("응답",r) let board_idx = r.data[0].board_id..
1. 스마트 컨트렉트 파일의 해시값을 저장하고 불러오는 간단한 기능이다. 이때, 한번 저장된 인덱스로는 다시 저장되지 않게 조건을 걸어두었다. pragma solidity >=0.4.22 Patents) public filesaved; event Savefile(address sender, string filehash); function _savefile(string memory _filehash, uint board_idx) internal { require(filesaved[board_idx].isFirst == false); filesaved[board_idx].filehash = _filehash; filesaved[board_idx].isFirst = true; emit Savefile(msg...

1. 일단 게시판에 첨부파일을 읽어오기 위한 공간 부터 만들어 준다. 저장된 파일* 2. 해당 파일에 대한 정보는 multipart를 사용하면 name , route로 나뉘어서 DB에 저장할 수 있다. route 경로 안에 실제 데이터를 저장시키고 그 경로를 href를 통해서 변수로서 넣게되면 첨부파일을 다운로드 하는 기능을 만들 수 있다. function getboardInfo(args){ console.log("getboardInfo",args); $.ajax({ type: "POST", url : 'tech/getboardInfo', data : {"bidx" :args.item.board_idx}, success: function(r){ if(r.success){ console.log("응답",r..

1. 부트스트랩 홈페이지에서 사이즈 등을 조정할 수 있다. 사이즈는 css를 조정하기 보다 부트스트랩의 class를 이용하여 잘 맞추어주면 된다. getbootstrap.com/docs/5.0/forms/form-control/#file-input Form controls Give textual form controls like s and s an upgrade with custom styles, sizing, focus states, and more. getbootstrap.com 2. 다음과 같이 포멧을 맞추어서 수정하였다. 글쓰기 × 게시글 종류* 거래이력 계약서 게시글 제목* 게시글 내용* 계약서* 해시값* 닫기 저장 3. 결과 화면 4. show hide를 이용하여 상황별로 모달을 다르게 띄우게..