基于区块链溯源系统后端开发

这篇具有很好参考价值的文章主要介绍了基于区块链溯源系统后端开发。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

摘要

已经完成了育种组织、养殖户组织、政府职能、普通用户的链码编写及后端接口编写,前三个组织均可添加数据及查询数据,且支持富查询,同时还可进行登录注册操作,普通用户则只可以进行查询溯源操作。总的Api路由组如下图:
区块链溯源系统源码,笔记,区块链
但仍旧存在问题,当开启7个区块链节点容器时,初始化链码后,会有一定随机性down掉两个区块链节点容器(不固定down掉某两个特定容器),于是我撤掉了两个容器,只开5个区块链节点容器,此时不再有容器down掉,但是偶尔会有节点容器与go sdk创建的客户端断开连接后又重连,而且发送交易时,速度缓慢,还有时会失败。根据推测,较大可能是虚拟机性能不足导致的。第二章我会介绍并测试各组织接口,只以两个组织为例,因为其他的都是一样的规范。


一、程序各模块功能简介

1.1 goSdk0_1

区块链溯源系统源码,笔记,区块链

  1. 解决Cors跨域问题的中间件
  2. go sdk创建客户端操作区块链的配置文件
  3. Fabric Info,存放model结构体的文件
  4. main函数文件
  5. 路由组执行函数的文件,主要是调用start.go文件中函数来实现操作逻辑。
  6. 底层函数的文件。因为这里的函数可以复用,故叫底层函数。

1.2 org_chaincode

链码文件
区块链溯源系统源码,笔记,区块链

  1. main.go
    最核心的是Invoke函数,根据fun执行特定的链码函数并传入参数args。
    区块链溯源系统源码,笔记,区块链
  2. controller.go
    所有的链码函数,都在这
  3. modle.go
    保存数据的结构体。
    区块链溯源系统源码,笔记,区块链

二、各接口功能详细介绍

2.1 Generate(育种组织)

2.1.1 添加数据

请求地址:127.0.0.1:6060/generate/addData
请求方式:POST
功能:添加数据,添加成功则返回的err为空(如下图),否则返回错误类型。
区块链溯源系统源码,笔记,区块链

2.1.2 查询数据(某只鸡最新的世界状态)

请求地址:127.0.0.1:6060/generate/queryData
请求方式:GET
功能:指定ID和Batch,查询指定凤鸡的最新状态。
区块链溯源系统源码,笔记,区块链

2.1.3 溯源查询

请求地址:127.0.0.1:6060/generate/queryHistoryData
请求方式:GET
功能:溯源函数,查询指定凤鸡所有的改动。
区块链溯源系统源码,笔记,区块链

2.1.4 汇总查询

请求地址:127.0.0.1:6060/generate/queryDataByStateBatch
请求方式:GET
功能:查询当前组织指定批次,所有活鸡。
区块链溯源系统源码,笔记,区块链

2.1.5 注册

请求地址:127.0.0.1:6060/generate/registry
请求方式:POST
功能:当前组织用户注册,注册成功则返回注册用户的信息。
区块链溯源系统源码,笔记,区块链

2.1.6 登录

请求地址:127.0.0.1:6060/generate/login
请求方式:GET
功能:输入用户,密码进行登录,登录成功则返回该账号的身份信息,否则返回错误。
区块链溯源系统源码,笔记,区块链

2.2 Breed(养殖户组织)

2.2.1 添加数据

请求地址:127.0.0.1:6060/breed/addData
请求方式:POST
功能:添加数据,添加成功则返回的err为空(如下图),否则返回错误类型。
区块链溯源系统源码,笔记,区块链

2.2.2 查询数据(某只鸡最新的世界状态)

请求地址:127.0.0.1:6060/breed/queryData
请求方式:GET
功能:指定ID和Batch,查询指定凤鸡的最新状态。
区块链溯源系统源码,笔记,区块链

2.2.3 溯源查询

请求地址:127.0.0.1:6060/breed/queryHistoryData
请求方式:GET
功能:溯源函数,查询指定凤鸡所有的改动。
区块链溯源系统源码,笔记,区块链

2.2.4 汇总查询

请求地址:127.0.0.1:6060/breed/queryDataByStateBatch
请求方式:GET
功能:查询当前组织指定批次,所有活鸡。
区块链溯源系统源码,笔记,区块链

2.2.5 注册

请求地址:127.0.0.1:6060/breed/registry
请求方式:POST
功能:当前组织用户注册,注册成功则返回注册用户的信息。
区块链溯源系统源码,笔记,区块链

2.2.6 登录

请求地址:127.0.0.1:6060/breed/login
请求方式:GET
功能:输入用户,密码进行登录,登录成功则返回该账号的身份信息,否则返回错误。
区块链溯源系统源码,笔记,区块链文章来源地址https://www.toymoban.com/news/detail-781378.html

到了这里,关于基于区块链溯源系统后端开发的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • beego框架编写食品溯源区块链后端

    安装go-sdk 将webase的sdk证书文件复制到自己的项目 修改config.toml使sdk是本项目下 修改配置文件app.conf 地址私钥根据自己的webase修改 新建conf.go获取配置文件信息 将go-sdk下config.go和config_pem.go复制到项目目录conf目录下 将合约编译成go文件 编写TraceService 与合约进行交互 编写foodI

    2024年02月03日
    浏览(30)
  • 基于区块链Hyperledger FabricV2.5的农产品溯源/商品/通用溯源应用系统模板

    本项目所有相关文档包括区块链设计、后端设计、前端设计、结合IPFS改进以及简易的二次开发步骤收录于:《Fabric项目学习笔记》。 购买专栏前请认真阅读:《Fabric项目学习笔记》专栏介绍 TrueTechLabs Fabric学习交流QQ群:776873343 一、项目介绍 基于区块链Hyperledger Fabric V2.5 的

    2024年03月15日
    浏览(42)
  • 11. Fabric2.2 区块链农产品溯源系统 - 智能合约开发-1

    智能合约与业务逻辑关联度高,承载大量业务逻辑,本小节教大家搭建智能合约开发环境GoLand,并编写合约打包脚本。 作者在windows电脑安装ubuntu18.04版本虚拟机(vmware),Linux环境也有Goland版本,可用性丝毫不差,所有的区块链开发在Linux环境进行。 官方可以下载,要么评估

    2023年04月20日
    浏览(71)
  • 42. 【农产品溯源项目前后端Demo】后端-区块链连接服务

    本节介绍后端代码是如何与区块链网络连接的。 1.在后端代码里fabric包 负责与区块链网络连接,并发送交易。 2.fabric.Const文件 定义 区块链网络拓扑结构,请查看注释。

    2023年04月08日
    浏览(35)
  • 基于Java开发一套完整的区块链系统(附完整源码)

    近几年区块链概念越来越火,特别是区块链技术被纳入国家基础设施建设名单后,各大企业也开始招兵买马,对区块链技术进行研究,从各大招聘网站的区块链职位来看,薪资待遇都很不错,月薪30K到80K的都有,这对于我们程序员来说也是一种机遇,说明学习区块链技术刻不

    2024年04月09日
    浏览(43)
  • 区块链食品安全(区块链食品安全溯源系统痛点)

    区块链在未来,会如何影响普通人的吃穿住行要回答这个问题我们需要好好的开一下脑洞我们先简单说下 区块链技术的特点:数据安全性高,应用区块链技术的数据几乎不可能被篡改。数据被记录后不可更改。数据可以有高度的透明性,人人都可以看到。分布式节点,数据不

    2024年01月22日
    浏览(32)
  • 43. 【农产品溯源项目前后端Demo】后端二次开发的重点修改位置

    前面讲过农产品溯源Demo比较简单,如果想二次开发需要重点关注的目录。 如果要开发一个新的API、对接新的合约,需要有哪些步骤? 定义数据结构,在domain包新增Class,定义好数据字段,定义好get、set方法。domain包没有业务的逻辑实现,只有结构、字段定义。 如果字段首字

    2024年02月02日
    浏览(44)
  • Fabric V2.5 通用溯源系统——区块链部分设计

    本节对Fabric V2.5 通用溯源系统的区块链部分做一个简单的介绍,包括目录结构、文件作用、设计思路。 此节内容免费发布在TrueTechLabs Fabric学习交流QQ群。 购买专栏前请认真阅读:《Fabric项目学习笔记》专栏介绍 TrueTechLabs Fabric学习交流QQ群:

    2024年04月28日
    浏览(23)
  • 粮油溯源系统源码 全流程可视化质量溯源系统源码

    粮油质量溯源系统源码 粮油溯源系统是从种植到加工、包装、库存、物流、销售、售出、异常反馈的全流程可视化质量溯源系统。 粮油安全关系千千万万消费者的健康问题。近年来,许多食品行业安全事故频频涌现,成为社会关注焦点。粮油做为人们生活饮食中的必需品、

    2024年02月12日
    浏览(30)
  • 面试笔记01【后端系统开发相关】

    2023.07.06 中午12:30出发,开了40分钟车,到北五环。 先做一个自我介绍,然后开始提问问题,一对一面试。 面试时间大约15分钟,提问的问题全是后端的。 1、接口的开发流程 接口的完整开发流程可以包括以下几个关键步骤: 确定需求:与相关利益相关方(包括产品经理、开

    2024年02月13日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包