

Binance Card 办卡教程
https://www.binance.com/en/cards/写在之前:为什么选择币安卡?无需出金、免去冻卡困扰、web3的资金直接消费购物相比depay等平台、省去每次用的时候单独充值步骤、也没有平台跑路的风险(暂且认为币安是可靠的)国外旅游直接刷卡消费:银联不如visa通用中国公民是否可以办理?可以、基础认证必须是护照/帕劳;身份证不行,因为卡片上需要印刷名字拼音;所以务必使用带拼音的证件去完成基础认证。基础认证已经是身份证了怎么办?方法1: 通过如下方式re-set你基础认证kyc https://www.binance.com/en/my/settings/profile/reset-kyc方法2: 如果方法1对你不适用、可找客服帮你重置你的基础kyc;理由是申请币安卡用;借记卡还是信用卡?借记卡(Visa通道支付/不支持银联Pos机刷卡)使用范围可绑定 支付宝 线上消费或者线下实体商户消费 可绑定 Google Pay Amazon 线上消费 支持全部海外线上服务订阅:Netflix订阅、ChatGPT订阅、Quizlet订阅、Spotify订阅等 实体卡可在任意支...

Table - number of mobile phones and personal computers
The table below shows the number of mobile phones and personal computers per thousand people in six different countries in 2003. Summarise the information by selecting and reporting the main features, and make comparisons where relevant.The table gives information about the number of handsets and personal computers every 1000 people had in six countries in 2003. It is noticeable that the majority of Icelandic citizens had mobile phones, and most San Marino citizens had personal computers. As ...

Monad 高阶领水教程 (四)
背景信息Monad测试网目前水龙头几乎不可用、项目方没有加验证码和钱包余额验证、导致科学家们集体脚本并发领取、目前水龙头基本瘫痪; 如下是曲线救国的领水方案:Get fucet eth sepolia somewhere(faucet.quicknode.com)Bridge eth from sepolia to monad testnet via (testnet.orbiter.finance)Swap eth in monad testnet to mon via (monad.ambient.finance)整个过程分为3个步骤: 第一个步骤:空白账户领取ETH的sepolia测试网ETH代币(很多方式 可自行百度) 第二个步骤:桥接sepolia测试网的eth转账到Monad的测试网 第三个步骤:在Monad测试网用eth交易Mon、直接购买到Mon测试代币即可。领取测试ETHhttps://cloud.google.com/application/web3/faucet/ethereum/sepolia桥接ETH代币到Monadhttps://testnet.orb...
Workout | English | Tec | Crypto
package main
import (
"errors"
"fmt"
"io/ioutil"
"reflect"
"strings"
)
type MysqlConf struct {
Address string `ini:"address"`
Port string `ini:"port"`
Username string `ini:"username"`
Password string `ini:"password"`
}
type Redisconf struct {
Host string `ini:"host"`
Port string `ini:"port"`
Password string `ini:"password"`
Database string `ini:"database"`
}
type Conf struct {
MysqlConf `ini:"mysql"`
Redisconf `ini:"redis"`
}
func loadIni(fileName string, data interface{}) (err error) {
t := reflect.TypeOf(data)
v := reflect.ValueOf(data)
//1 判断传进来指针 并且是结构体指针
if t.Kind() != reflect.Ptr || t.Elem().Kind() != reflect.Struct {
err = errors.New("input type is not Struct Ptr")
return
}
//2. 读文件得到字节数据类型
content, err := ioutil.ReadFile(fileName)
if err != nil {
err = errors.New("open file faild")
return
}
//3. 一行一行读数据
var sectionName string
var structName string
lines := strings.Split(string(content), "\n")
for _, line := range lines {
line = strings.TrimSpace(line)
//3.1 空行跳过循环
if len(line) == 0 {
continue
}
//3.2 注释跳过循环
if strings.HasPrefix(line, "#") {
continue
}
//3.3 如果是 [ 开头就表示是section字段
if strings.HasPrefix(line, "[") {
sectionName = strings.TrimSpace(line[1 : len(line)-1])
for i := 0; i < v.Elem().NumField(); i++ {
field := v.Elem().Type().Field(i)
if sectionName == field.Tag.Get("ini") {
structName = field.Name
}
}
} else {
// 获取seciton下面的key and value
key := strings.TrimSpace(strings.Split(line, "=")[0])
value := strings.TrimSpace(strings.Split(line, "=")[1])
// 获取嵌套里的struct
structObj := v.Elem().FieldByName(structName)
// 获取最终的字段
var fieldName string
for i := 0; i < structObj.NumField(); i++ {
field := structObj.Type().Field(i)
if key == field.Tag.Get("ini") {
fieldName = field.Name
}
}
//赋值操作
structObj.FieldByName(fieldName).SetString(value)
}
}
return nil
}
func main() {
var cfg Conf
err := loadIni("./conf.ini", &cfg)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("Mysql address is:%s\n", cfg.MysqlConf.Address)
fmt.Printf("Mysql port is:%s\n", cfg.MysqlConf.Port)
fmt.Printf("Mysql username is:%s\n", cfg.MysqlConf.Username)
fmt.Printf("Mysql password is:%s\n", cfg.MysqlConf.Password)
fmt.Printf("Redis host is:%s\n", cfg.Redisconf.Host)
fmt.Printf("Redis port is:%s\n", cfg.Redisconf.Port)
fmt.Printf("Redis password is:%s\n", cfg.Redisconf.Password)
fmt.Printf("Redis database is:%s\n", cfg.Redisconf.Database)
}
conf.ini
[mysql]
address=192.168.100.100
port=3306
username=root
password=BaVzJJJlNBS47uo9KduonCtMrdPhyYVG
[redis]
host= 127.0.0.1
port= 6379
password=123.com
database=0

package main
import (
"errors"
"fmt"
"io/ioutil"
"reflect"
"strings"
)
type MysqlConf struct {
Address string `ini:"address"`
Port string `ini:"port"`
Username string `ini:"username"`
Password string `ini:"password"`
}
type Redisconf struct {
Host string `ini:"host"`
Port string `ini:"port"`
Password string `ini:"password"`
Database string `ini:"database"`
}
type Conf struct {
MysqlConf `ini:"mysql"`
Redisconf `ini:"redis"`
}
func loadIni(fileName string, data interface{}) (err error) {
t := reflect.TypeOf(data)
v := reflect.ValueOf(data)
//1 判断传进来指针 并且是结构体指针
if t.Kind() != reflect.Ptr || t.Elem().Kind() != reflect.Struct {
err = errors.New("input type is not Struct Ptr")
return
}
//2. 读文件得到字节数据类型
content, err := ioutil.ReadFile(fileName)
if err != nil {
err = errors.New("open file faild")
return
}
//3. 一行一行读数据
var sectionName string
var structName string
lines := strings.Split(string(content), "\n")
for _, line := range lines {
line = strings.TrimSpace(line)
//3.1 空行跳过循环
if len(line) == 0 {
continue
}
//3.2 注释跳过循环
if strings.HasPrefix(line, "#") {
continue
}
//3.3 如果是 [ 开头就表示是section字段
if strings.HasPrefix(line, "[") {
sectionName = strings.TrimSpace(line[1 : len(line)-1])
for i := 0; i < v.Elem().NumField(); i++ {
field := v.Elem().Type().Field(i)
if sectionName == field.Tag.Get("ini") {
structName = field.Name
}
}
} else {
// 获取seciton下面的key and value
key := strings.TrimSpace(strings.Split(line, "=")[0])
value := strings.TrimSpace(strings.Split(line, "=")[1])
// 获取嵌套里的struct
structObj := v.Elem().FieldByName(structName)
// 获取最终的字段
var fieldName string
for i := 0; i < structObj.NumField(); i++ {
field := structObj.Type().Field(i)
if key == field.Tag.Get("ini") {
fieldName = field.Name
}
}
//赋值操作
structObj.FieldByName(fieldName).SetString(value)
}
}
return nil
}
func main() {
var cfg Conf
err := loadIni("./conf.ini", &cfg)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("Mysql address is:%s\n", cfg.MysqlConf.Address)
fmt.Printf("Mysql port is:%s\n", cfg.MysqlConf.Port)
fmt.Printf("Mysql username is:%s\n", cfg.MysqlConf.Username)
fmt.Printf("Mysql password is:%s\n", cfg.MysqlConf.Password)
fmt.Printf("Redis host is:%s\n", cfg.Redisconf.Host)
fmt.Printf("Redis port is:%s\n", cfg.Redisconf.Port)
fmt.Printf("Redis password is:%s\n", cfg.Redisconf.Password)
fmt.Printf("Redis database is:%s\n", cfg.Redisconf.Database)
}
conf.ini
[mysql]
address=192.168.100.100
port=3306
username=root
password=BaVzJJJlNBS47uo9KduonCtMrdPhyYVG
[redis]
host= 127.0.0.1
port= 6379
password=123.com
database=0

Binance Card 办卡教程
https://www.binance.com/en/cards/写在之前:为什么选择币安卡?无需出金、免去冻卡困扰、web3的资金直接消费购物相比depay等平台、省去每次用的时候单独充值步骤、也没有平台跑路的风险(暂且认为币安是可靠的)国外旅游直接刷卡消费:银联不如visa通用中国公民是否可以办理?可以、基础认证必须是护照/帕劳;身份证不行,因为卡片上需要印刷名字拼音;所以务必使用带拼音的证件去完成基础认证。基础认证已经是身份证了怎么办?方法1: 通过如下方式re-set你基础认证kyc https://www.binance.com/en/my/settings/profile/reset-kyc方法2: 如果方法1对你不适用、可找客服帮你重置你的基础kyc;理由是申请币安卡用;借记卡还是信用卡?借记卡(Visa通道支付/不支持银联Pos机刷卡)使用范围可绑定 支付宝 线上消费或者线下实体商户消费 可绑定 Google Pay Amazon 线上消费 支持全部海外线上服务订阅:Netflix订阅、ChatGPT订阅、Quizlet订阅、Spotify订阅等 实体卡可在任意支...

Table - number of mobile phones and personal computers
The table below shows the number of mobile phones and personal computers per thousand people in six different countries in 2003. Summarise the information by selecting and reporting the main features, and make comparisons where relevant.The table gives information about the number of handsets and personal computers every 1000 people had in six countries in 2003. It is noticeable that the majority of Icelandic citizens had mobile phones, and most San Marino citizens had personal computers. As ...

Monad 高阶领水教程 (四)
背景信息Monad测试网目前水龙头几乎不可用、项目方没有加验证码和钱包余额验证、导致科学家们集体脚本并发领取、目前水龙头基本瘫痪; 如下是曲线救国的领水方案:Get fucet eth sepolia somewhere(faucet.quicknode.com)Bridge eth from sepolia to monad testnet via (testnet.orbiter.finance)Swap eth in monad testnet to mon via (monad.ambient.finance)整个过程分为3个步骤: 第一个步骤:空白账户领取ETH的sepolia测试网ETH代币(很多方式 可自行百度) 第二个步骤:桥接sepolia测试网的eth转账到Monad的测试网 第三个步骤:在Monad测试网用eth交易Mon、直接购买到Mon测试代币即可。领取测试ETHhttps://cloud.google.com/application/web3/faucet/ethereum/sepolia桥接ETH代币到Monadhttps://testnet.orb...
Share Dialog
Share Dialog
Workout | English | Tec | Crypto

Subscribe to Robin

Subscribe to Robin
<100 subscribers
<100 subscribers
No activity yet