From 94a95b77905123c93449ec7e00fa58e12b4801b2 Mon Sep 17 00:00:00 2001 From: imconfig <982748666@qq.com> Date: Fri, 7 Jun 2019 10:47:22 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=86=E8=8A=82=E7=82=B9=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E5=9C=B0=E5=9D=80=E8=BF=81=E7=A7=BB=E8=87=B3=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=96=87=E4=BB=B6=EF=BC=8C=E4=BF=AE=E6=94=B9readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 10 +-- package-lock.json | 170 +++++++++++++++++++++++++++++++++++++++--- src/api/index.js | 5 +- src/index.js | 3 +- src/utils/constant.js | 6 ++ 5 files changed, 173 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index 79cc074..059a0c8 100644 --- a/README.md +++ b/README.md @@ -4,17 +4,17 @@ 还可以使用本工具直接查询区块链上的数据。 -如何使用(针对程序猿,需要事先安装好git、node和npm/cnpm) +如何使用(针对程序猿,需要事先安装好`git`、`node`、`npm`/`cnpm`) 1. git clone https://github.com/fractalplatform/webWallet.git 2. cd webWallet 3. npm i 4. npm run start -- -p 8080 -5. 在浏览器中访问http://localhost:8080, 节点信息设置按钮位于网页右上角处,默认链接本地节点(http://127.0.0.1:8545),如需链接FT公链的测试网络请更改链接为:http://node.pub-fractal.com +5. 在浏览器中访问 `http://localhost:8080`, 节点信息设置按钮位于网页右上角处,默认连接本地节点(`http://127.0.0.1:8545`),如需连接FT公链的测试网络修改`./src/utils/constant.js` `BASE_URL`为:`http://node.pub-fractal.com` ### 用户使用指南: 由于Fractal采用了更容易记忆的账号体系来包装难以记忆的公私钥账号,因此在钱包里,我们需要先生成或导入公私钥,然后再生成容易记忆的账号,将公钥同账号绑定后即可使用(如转账、发行资产等操作),具体操作如下: -- 进入“账户管理”一栏中的“密钥”子栏目 -- 对于首次使用本网页钱包的用户,需要初始化本钱包,点击按钮“初始化钱包/新增一对公私钥”,此时会有助记词出现,按提示操作即可,除此以外,你还可以通过导入助记词来初始化钱包,点击按钮“通过导入助记词初始化钱包”,按提示操作即可; +- 进入**账户管理**一栏中的**密钥**子栏目 +- 对于首次使用本网页钱包的用户,需要初始化本钱包,点击按钮**初始化钱包/新增一对公私钥**,此时会有助记词出现,按提示操作即可,除此以外,你还可以通过导入助记词来初始化钱包,点击按钮**通过导入助记词初始化钱包**,按提示操作即可; - 钱包初始化完成后,还可以使用直接导入私钥、导入keystore等操作,用于钱包之间的账号转移; -- 当密钥部分有公私钥后,便可进入“账号”子栏目开始创建账号,对于首次之前没有任何账号的用户,需要向官方或是其他有账号的用户获取帮助,帮您创建一个账号,您只要将账号名和账号需要绑定的公钥告知对方即可,对方就能帮您创建账号,切记不要告知对方您的私钥,当对方把账号创建好后,您便可导入账号,进而对此账号做一些操作。 \ No newline at end of file +- 当密钥部分有公私钥后,便可进入**账号**子栏目开始创建账号,对于首次之前没有任何账号的用户,需要向官方或是其他有账号的用户获取帮助,帮您创建一个账号,您只要将账号名和账号需要绑定的公钥告知对方即可,对方就能帮您创建账号,切记不要告知对方您的私钥,当对方把账号创建好后,您便可导入账号,进而对此账号做一些操作。 \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index ee51ff4..f960627 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4806,12 +4806,27 @@ "dev": true }, "axios": { - "version": "0.17.1", - "resolved": "http://registry.npm.taobao.org/axios/download/axios-0.17.1.tgz", - "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.18.1.tgz", + "integrity": "sha512-0BfJq4NSfQXd+SkFdrvFbG7addhYSBA2mQwISr46pD6E5iqkWg02RAs8vyTT/j0RTnoYmeXauBuSv1qKwR179g==", "requires": { - "follow-redirects": "^1.2.5", - "is-buffer": "^1.1.5" + "follow-redirects": "1.5.10", + "is-buffer": "^2.0.2" + }, + "dependencies": { + "follow-redirects": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", + "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", + "requires": { + "debug": "=3.1.0" + } + }, + "is-buffer": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz", + "integrity": "sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw==" + } } }, "axobject-query": { @@ -4946,6 +4961,12 @@ "test-exclude": "^3.3.0" } }, + "babel-plugin-react-v-html": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/babel-plugin-react-v-html/-/babel-plugin-react-v-html-1.0.4.tgz", + "integrity": "sha512-dhUsNGr6s8Jc5PMJs0rIR1e2cgEGmaaQJ1ajU80BSSirJx2PV34JbGLtMC0DEXt4/+MQYosvpMeYMW+MZBsZZA==", + "dev": true + }, "babel-plugin-syntax-dynamic-import": { "version": "6.18.0", "resolved": "http://registry.npm.taobao.org/babel-plugin-syntax-dynamic-import/download/babel-plugin-syntax-dynamic-import-6.18.0.tgz", @@ -5148,6 +5169,14 @@ } } }, + "base-x": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.5.tgz", + "integrity": "sha512-C3picSgzPSLE+jW3tcBzJoGwitOtazb5B+5YmAxZm2ybmTi9LNgAtDO/jjVEBZwHoXmDBZ9m/IELj3elJVRBcA==", + "requires": { + "safe-buffer": "^5.0.1" + } + }, "base64-js": { "version": "1.3.0", "resolved": "http://registry.npm.taobao.org/base64-js/download/base64-js-1.3.0.tgz", @@ -5429,6 +5458,14 @@ "node-releases": "^1.1.8" } }, + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha1-vhYedsNU9veIrkBx9j806MTwpCo=", + "requires": { + "base-x": "^3.0.2" + } + }, "buffer": { "version": "4.9.1", "resolved": "http://registry.npm.taobao.org/buffer/download/buffer-4.9.1.tgz", @@ -8536,6 +8573,15 @@ "resolved": "http://registry.npm.taobao.org/ethereum-common/download/ethereum-common-0.0.18.tgz", "integrity": "sha1-L9w1dvIykDNYl26znaeDIT/5Uj8=" }, + "ethereumjs-abi": { + "version": "0.6.7", + "resolved": "https://registry.npmjs.org/ethereumjs-abi/-/ethereumjs-abi-0.6.7.tgz", + "integrity": "sha512-EMLOA8ICO5yAaXDhjVEfYjsJIXYutY8ufTE93eEKwsVtp2usQreKwsDTJ9zvam3omYqNuffr8IONIqb2uUslGQ==", + "requires": { + "bn.js": "^4.11.8", + "ethereumjs-util": "^6.0.0" + } + }, "ethereumjs-tx": { "version": "1.3.7", "resolved": "http://registry.npm.taobao.org/ethereumjs-tx/download/ethereumjs-tx-1.3.7.tgz", @@ -8575,6 +8621,65 @@ "secp256k1": "^3.0.1" } }, + "ethers": { + "version": "4.0.29", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-4.0.29.tgz", + "integrity": "sha512-WCaH8an3Y+i85zW6Y6fmt0oQE9GXJy9NjqNVDTJVUJ/WBLIB1z17nG16lbOz3zVYWFgarfnzVakN2G7AyXk1Xg==", + "requires": { + "@types/node": "^10.3.2", + "aes-js": "3.0.0", + "bn.js": "^4.4.0", + "elliptic": "6.3.3", + "hash.js": "1.1.3", + "js-sha3": "0.5.7", + "scrypt-js": "2.0.4", + "setimmediate": "1.0.4", + "uuid": "2.0.1", + "xmlhttprequest": "1.8.0" + }, + "dependencies": { + "@types/node": { + "version": "10.14.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.14.8.tgz", + "integrity": "sha512-I4+DbJEhLEg4/vIy/2gkWDvXBOOtPKV9EnLhYjMoqxcRW+TTZtUftkHktz/a8suoD5mUL7m6ReLrkPvSsCQQmw==" + }, + "elliptic": { + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.3.3.tgz", + "integrity": "sha1-VILZZG1UvLif19mU/J4ulWiHbj8=", + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "inherits": "^2.0.1" + } + }, + "hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.0" + } + }, + "scrypt-js": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-2.0.4.tgz", + "integrity": "sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw==" + }, + "setimmediate": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.4.tgz", + "integrity": "sha1-IOgd5iLUoCWIzgyNqJc8vPHTE48=" + }, + "uuid": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz", + "integrity": "sha1-wqMN7bPlNdcsz4LjQ5QaULqFM6w=" + } + } + }, "ethjs-util": { "version": "0.1.6", "resolved": "http://registry.npm.taobao.org/ethjs-util/download/ethjs-util-0.1.6.tgz", @@ -9500,6 +9605,28 @@ "prop-types": "^15.6.0" } }, + "fractal-web3": { + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/fractal-web3/-/fractal-web3-1.1.16.tgz", + "integrity": "sha512-K1XdDwzqHQ6zDHj9oWl2MABagjbYEYKGaoOdU32NepEs+6M1rbJDg7L79zEi88NAmo9IlpqnLE8l+af/5qQaGQ==", + "requires": { + "eth-crypto": "^1.3.3", + "ethereumjs-abi": "^0.6.7", + "ethereumjs-util": "^6.1.0", + "rlp": "^2.2.3" + }, + "dependencies": { + "rlp": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.3.tgz", + "integrity": "sha512-l6YVrI7+d2vpW6D6rS05x2Xrmq8oW7v3pieZOJKBEdjuTF4Kz/iwk55Zyh1Zaz+KOB2kC8+2jZlp2u9L4tTzCQ==", + "requires": { + "bn.js": "^4.11.1", + "safe-buffer": "^5.1.1" + } + } + } + }, "fractal_solidity_js": { "version": "1.0.0", "resolved": "http://registry.npm.taobao.org/fractal_solidity_js/download/fractal_solidity_js-1.0.0.tgz", @@ -9590,11 +9717,13 @@ }, "balanced-match": { "version": "1.0.0", - "bundled": true + "bundled": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -9607,15 +9736,18 @@ }, "code-point-at": { "version": "1.1.0", - "bundled": true + "bundled": true, + "optional": true }, "concat-map": { "version": "0.0.1", - "bundled": true + "bundled": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", - "bundled": true + "bundled": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -9718,7 +9850,8 @@ }, "inherits": { "version": "2.0.3", - "bundled": true + "bundled": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -9728,6 +9861,7 @@ "is-fullwidth-code-point": { "version": "1.0.0", "bundled": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -9740,17 +9874,20 @@ "minimatch": { "version": "3.0.4", "bundled": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { "version": "0.0.8", - "bundled": true + "bundled": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -9767,6 +9904,7 @@ "mkdirp": { "version": "0.5.1", "bundled": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -9839,7 +9977,8 @@ }, "number-is-nan": { "version": "1.0.1", - "bundled": true + "bundled": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -9849,6 +9988,7 @@ "once": { "version": "1.4.0", "bundled": true, + "optional": true, "requires": { "wrappy": "1" } @@ -9954,6 +10094,7 @@ "string-width": { "version": "1.0.2", "bundled": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -12307,6 +12448,11 @@ "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", "dev": true }, + "json-format-highlight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-format-highlight/-/json-format-highlight-1.0.1.tgz", + "integrity": "sha512-LPbx2Wr6AQb0IPD3lQ+NorDBUwpimY5dFTOYQNWplHonbUfy99w1CjQPI486ZsD8ud5sea3UQ27iZCPEW2kiNQ==" + }, "json-parse-better-errors": { "version": "1.0.2", "resolved": "http://registry.npm.taobao.org/json-parse-better-errors/download/json-parse-better-errors-1.0.2.tgz", diff --git a/src/api/index.js b/src/api/index.js index 8638c93..0d93f5e 100644 --- a/src/api/index.js +++ b/src/api/index.js @@ -7,11 +7,10 @@ import cookie from 'react-cookies'; import { encode } from 'rlp'; import { Feedback } from '@icedesign/base'; import * as utils from '../utils/utils'; - -let provider = 'http://127.0.0.1:8545'; +import { BASE_URL } from '../utils/constant'; async function postToNode(dataToNode) { - return fetch(provider, {headers: { "Content-Type": "application/json" }, method: 'POST', body: dataToNode}); + return fetch(BASE_URL, {headers: { "Content-Type": "application/json" }, method: 'POST', body: dataToNode}); // const data = await response.json(); // if (data.data.error != null) { // throw data.data.error.message; diff --git a/src/index.js b/src/index.js index 52501cf..ca0ae13 100644 --- a/src/index.js +++ b/src/index.js @@ -13,6 +13,7 @@ import '@icedesign/base/reset.scss'; import router from './router'; import configureStore from './configureStore'; +import { BASE_URL } from './utils/constant'; // Create redux store with history const initialState = {}; @@ -20,7 +21,7 @@ const history = createHashHistory(); const store = configureStore(initialState, history); const ICE_CONTAINER = document.getElementById('ice-container'); axios.defaults.headers.post['Content-Type'] = 'application/json'; -axios.defaults.baseURL = 'http://127.0.0.1:8545'; +axios.defaults.baseURL = BASE_URL; const nodeInfo = cookie.load('nodeInfo'); if (nodeInfo != null && nodeInfo !== '') { axios.defaults.baseURL = nodeInfo; diff --git a/src/utils/constant.js b/src/utils/constant.js index 650c973..660915f 100644 --- a/src/utils/constant.js +++ b/src/utils/constant.js @@ -1,3 +1,9 @@ +/** + * 默认链接本地节点(http://127.0.0.1:8545) + * 如需链接FT公链的测试网络请更改链接为:http://node.pub-fractal.com + */ +export const BASE_URL = 'http://127.0.0.1:8545'; + export const CALL_CONTRACT = 0; export const CREATE_CONTRACT = 1;