区块链投票项目项目地址GITHUB项目说明区块链投票小项目,主要使用了Nuxt和web3.项目设计1. 服务结构虽然中心化服务器使得合约操作有了中心化风险,但是在当前智能合约性能较弱、功能不完善的时候中心化服务器有利于集中管理、提高服务性能、提供附加服务。2. 服务器结构设计除了基本的用户注册、用户账户信息存储、合约基本信息存储、附加服务如请求加入合约,其余操作均由服务器在区块链上进行操作。数据库中只存储基本信息。3. 用户页面设计提供合约操作的图形化接口,尽可能使用户直观、方便、快捷地进行合约操作,免去不方便地命令行等直接操作。4. 数据库设计数据库只用于存储基本信息,如用户信息、合约信息、请求信息、参与表。其余信息和操作都通过区块链来进行。使用说明1. 登录与注册账号密码按要求填写即可,但是注册时会直接用有资产的账户给新建账户转 1ETH,所以需要修改VoteSystem/server/contractOP/contractOP.js中showMeTheMoney函数中的测试账户。2. 创建投票项目由于使用 String 或 bytes 太多会导致 gas 不足,所以存储的数据都限定为 bytes32,也就是只能有限个字符。3. 创建的合约管理点开每一行可以看到所有的提议4. 首页加入项目所有未申请以及未参与的项目都会显示在主页。5. 请求参加项目所有请求参加的项目都在我的请求项中,可以在请求被批准前取消。6. 请求管理所有申请参加属于该用户创建的合约的请求都会显示在管理请求中。7. 参与的投票我参与的显示所有被批准参与的投票。8. 投票完成点击提议可以给合约投票,投票完成后刷新页面重新获取票数。测试测试视频使用ganache-cli作为测试用区块链