Golang 多平台一键打包
环境说明
开发环境:windows 10
生产环境:Ubuntu 18.04.6 LTS
goreleaser v1.5.0
go version go1.17.6 windows/amd64
步骤说明安装参看 Goreleaser Install
可以找到相应系统的安装方式,我这里用的是
go install
go install github.com/goreleaser/goreleaser@latest
04/03/2022 14:07.32 /home/mobaxterm goreleaser -vgoreleaser version devgoos: windowsgoarch: amd64module version: v1.5.0, checksum: h1:l4BxBt2Rrk5Tngmzyrcp7H/CszXSA0guzL4mPo4peAU=https://goreleaser.com
配置参考Goreleaser Quick Start
执行 goreleaser init ,会生成一个.goreleaser.yml配置
gorelea ...
最新Coding&腾讯云部署Hexo博客-(20220302更新)
环境说明
windows 10
git version 2.21.0
hexo-cli: 4.3.0
node 14.18.3
npm 6.14.15
步骤说明部署上线参看:生成文件
您可执行下列的其中一个命令,让 Hexo 在生成完毕后自动部署网站,两个命令的作用是相同的。
$ hexo generate --deploy$ hexo deploy --generate
简写
上面两个命令可以简写为
$ hexo g -d$ hexo d -g
问题说明ERROR Deployer not found: git解决
npm install --save hexo-deployer-git
参考文献自建静态网站
hexo 中文文档
DApp开发教程(一)
环境说明
windows 10
npm 6.14.15
node.js v14.18.3*
步骤说明DApp 概念App = 客户端 + 服务端 (数据保存在中心化数据库)
DApp = 客户端 + 智能合约 (数据保存在区块链上)
DApp 开发工具几个Ethereum DApp 开发必备的工具
Web3.js Ethereum官方提供的可以通过 Javascript 来调用Ethereum方法的类库
infura 提供了Ethereum 重钱包节点,再也不用自己维护几百G的钱包了
Metamask 浏览器插件,为你浏览器提供了一个去中心化的以太坊钱包 (源码也用到了 web3.js 和 infura的服务)
truffle.js 可以用它来管理智能合约, 偏工程化,truffle boxes 提供了一些脚手架能快速搭建 React、Vue、Webpack等环境
remix web版本的solidity编译调试工具,Web App 本身比较轻量。适合平时学习调试ethereum/solidity
Ganache 安装下载
安装
Ganache CLI v6.12.2 (ga ...
PHP使用QueryList抓取BSC合约交易Table
环境说明
TP6
PHP 8.0
QueryList 4.2.8
步骤说明需求采集www.bscscan.com中交易信息
安装 QueryListcomposer require jaeger/querylist
代码示例class Bsc{ private function getSid($html) { $html = strstr($html, 'var sid ='); $html = substr($html, strpos($html, 'var sid = \'') + 11); return substr($html, 0, strpos($html, "'")); } private function getPageData($page) { $otherArgs = [ 'headers' => [ ...
基于Kotlin的SpringCloud的快速构建(一)
环境说明
Mac
Kotlin 1.3.72
Gradle 6.4
Java 1.8
Sping Boot 2.2.0
项目地址Axin-SpringCloud
如果帮助到了您,动动小手,帮忙给个star。
步骤说明说明首先明确兼容的Spring Cloud的版本,可以在这里查询Spring Cloud
这里我贴出来下:
Table 1. Release train Spring Boot compatibility
Release Train
Boot Version
Hoxton
2.2.x
Greenwich
2.1.x
Finchley
2.0.x
Edgware
1.5.x
Dalston
1.5.x
因为我的SpingBoot是2.2.0,所以你一会在build.gradle中会看到
springCloudVersion = 'Hoxton.RELEASE'
创建项目
这里快速的过一下,老鸟自己略过。。。
Create New Project
选择Spring Initiallizr->Project S ...
基于Kotlin的SpringCloud的快速构建(三)
项目地址Axin-SpringCloud
如果帮助到了您,动动小手,帮忙给个star。
步骤说明创建微服务Product和Order根据 基于Kotlin的SpringCloud的快速构建(二)
新模块的创建,创建两个微服务Product与Order,创建好后的目录如下
Product 启动类,build.gradle,yml配置启动类package com.axinblog.productimport org.springframework.boot.autoconfigure.SpringBootApplicationimport org.springframework.boot.runApplicationimport org.springframework.cloud.netflix.eureka.EnableEurekaClient@SpringBootApplication@EnableEurekaClientclass ProductApplicationfun main(args: Array<String>) { runApplicati ...
基于Kotlin的SpringCloud的快速构建(二)
项目地址Axin-SpringCloud
如果帮助到了您,动动小手,帮忙给个star。
步骤说明构建Eureka注册中心
对主项目SpringCloud右键,构建子模块,来创建Eureka
还是选择Gradle,这里取消选中Java。
ArtifactId 输入 eureka
Module name 我使用的是大写
现在项目结构如图
Eureka 的启动启动类package com.axinblog.eurekaimport org.springframework.boot.autoconfigure.SpringBootApplicationimport org.springframework.boot.runApplicationimport org.springframework.cloud.netflix.eureka.server.EnableEurekaServer@SpringBootApplication@EnableEurekaServerclass EurekaApplicationfun main(args: Array<String>) ...
Golang Gin 接收参数
步骤说明路径参数请求地址:/v1/member/info/:code
code := c.Param("code")
Get参数请求地址:/v1/member/info?code=”嘿嘿嘿”
code := c.Query("code")code := ctx.DefaultQuery("code", "axinblog")
Post参数
json 中获取
type Params struct { MemberId int64 `json:"member_id"` Issue string `json:"issue"`}var params Params_ = ctx.BindJSON(¶ms)
表单中获取
// 表单取值code := ctx.PostForm("code")// 无值取默认code := ctx.DefaultPostForm("code", &q ...
Golang json 序列化与反序列化
步骤说明反序列化json.Unmarshal([]byte(item)
func (d *Dao) QueryRobotAll(ctx context.Context) (res []*model.RobotList, err error) { key := "robot:robot_info" data, err := d.Redis.HGetAll(ctx, key).Result() if err != nil { panic(err) } for _, item := range data { temp := &model.RobotList{} if err := json.Unmarshal([]byte(item), temp); err != nil { log.Error("sorry,script err(%v)", err) } res = append(res, temp) } return}
Golang 匿名函数示例
步骤说明// 定义匿名函数方式一add := func (x, y int) { fmt.Println(x + y)}add(1, 2) // 通过变量调用匿名函数// 定义匿名函数方式二func (x, y int) { fmt.Println(x - y)}(20, 5) //自执行函数:匿名函数定义完加()直接执行
// TaskSyncUpload上传图片func TaskSyncBatchUpload(ctx *gin.Context) { type Params struct { MemberId int64 `json:"member_id"` FormData []*model.MemberTaskFormData `json:"form_data"` } var params Params _ = ctx.BindJSON(¶ms) ch := make(chan bool, ...