Giter Site home page Giter Site logo

kangchihlun / usdt-payment-demo Goto Github PK

View Code? Open in Web Editor NEW
11.0 1.0 6.0 600 KB

去中心化商城 usdt 支付 , docker 等基礎服務已經都設定完成,只要簡單置換私鑰即可直接運行,快速搭建服務

JavaScript 81.88% Solidity 7.72% HTML 10.40%
dapp usdt ecommerce shop

usdt-payment-demo's Introduction

項目簡介

  • 線上商城demo
  • 前後端分離架構
  • 前端採用 create-react-app
  • 後端使用 koa2+mongoose
  • 主要參考 eattheblock 替換掉部屬到測試網,以及代幣種類(真實上線使用USDT)
  • 後端 mongo 使用 docker-compose 快速生成

項目架構流程圖

項目架構流程圖

運行畫面

運行畫面

項目建置流程

  • cd compose
  • 視情況修改一下 mongo/init-mongo.js 的帳密
  • docker-compose up --force-recreate 啟動基本服務 mongo
  • truffle compile
  • 到 infura 申請一個 eth 節點帳號,取得 rpc endpoint
  • 到 chrome 安裝 metamask 並抄下自己的私鑰
  • 到 goerli 水龍頭 https://discord.com/channels/476244492043812875/719985056319406182 領取33個測試eth
  • 分別進到 frontend/backend/根目錄下做 npm install
  • 修改 /backend/db.js 的 db 連線位置,預設帳密為 mihael/upay123
  • 修改 server.js 的 rpcEndpoint ,注意要選 wss
  • 修改 truffle-config.js 的 HDWallet Provider 私鑰
  • truffle migrate --network goerli --reset (部屬到goerli 測試網,合約需自行部屬,最好把 frontend/src/contract 刪掉再重新佈署)
  • truffle migrate --network mainnet --reset (部屬到主網)
  • node ./backend/server.js (啟動後端)
  • sudo iptables -I INPUT -p tcp -m tcp --dport 4000 -j ACCEPT 開啟4000 port 對外
  • 在本地增加 netsh interface portproxy add v4tov4 listenport=4000 connectaddress=虛擬機ip connectport=4000(我是用VMWare,本地localhost代理到 虛擬機ip)
  • 測試連線 localhost:4000
  • cd frontend ; npm start
  • 訪問 localhost:3000 如果正常運行,會看到前端 metamask 視窗彈出

可能會碰到的錯誤

  • 部屬錯誤 "Migrations" exceeded the block limit (with a gas value you set) 解法: gas 費用調低
  • PollingBlockTracker - encountered an error while attempting to update latest block: 測試網會出現的連線異常,重新佈署

usdt-payment-demo's People

Contributors

kangchihlun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.