package main
import (
"encoding/json"
"fmt"
)
// 结构体成员首字母大写才能被序列化,`json:字段` 表示在json中显示的字段
type person struct {
Name string `json:"name"`
Age int `json:"age"`
}
func main() {
p1 := person{
Name: "John",
Ag...作者文章归档:zuojie@88.com
1375 views
Python使用JWT
959 views
JWT
jwt(JSON Web Tokens),在用户认证当中常用的方式,在如今的前后端分离项目当中应用广泛。
传统token和jwt区别
- 传统token:服务端会对登录成功的用户生成一个随机token返回,同时也会在本地保留对应的token(如在数据库中存入:token、用户名、过期时间等),当用户再次访问时,会携带之前的token给服务端进行校验,服务端则通过与本地保留的token进行对比,若寻找到符合条件的token数据,则校验成功。
- jwt:服务端会对登录成功的用户生成一个随机token返回,但并不会在服务端本地保留(这是jwt和传统token最大的区别),而当用户再次访...
Go语言基础案例(一)
1291 views
简单学生管理
package main
import "fmt"
var (
allStudent map[int64]*student
)
type student struct {
id int64
name string
}
func newStudent(id int64, name string) *student {
return &student{
id: id,
name: name,
}
}
func showAllStudent() {
for...NumPy基础(四)
1457 views
# 矩阵操作
import numpy as np
# 1.创建numpy矩阵
'''
np.mat("1 2 3;4 5 6;7 8 9")
np.matrix([[1,2,3],[4,5,6],[7,8,9]])
np.bmat("arr1 arr2;arr1 arr2")
'''
mat1 = np.mat("1 2 3;4 5 6;7 8 9")
print(mat1)
print(type(mat1))
mat2 = np.matrix([[1, 2, 3], [4...Linux下Python环境搭建
1262 views
Linux下Python环境搭建
服务器为:CentOS7 版本
0. 前期工作
1)配置好网络,开启网卡
2)配置好yum源(建议使用阿里源、华为源、清华源)
1、依赖库安装
# 安装开发工具组
yum groupinstall "Development tools"
# 安装其他依赖
yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel xz xz-devel libtiff-deve...DRF基础(一)
1664 views
什么是API
API作为一个互联网行业的术语,很少被直接翻译过来,因为在中文中并没有一个对应的词汇可以完全表达其含义,如果强行翻译,可以被翻译为数据接口,但显然这个翻译并不准确。
举个现实中的例子,比如购房网上面有全国房屋买卖的交易数据,万达公司在需要一些房屋交易数据来作为参考投产项目时,如果自己去做社会调研,费时、费力,非常不合算,所以万达公司每年都要向购房网支付数百万元来购买这些交易数据。大家是否考虑过,这一笔交易是以怎样的方式进行的呢?所谓的一手交钱一手交货,交钱的流程比较简单,只要万达公司将资金汇给购房网就可以了,但是购房网是怎样将全国房屋买卖的交易数据交给万达公...
NumPy基础(三)
1290 views
# 导入numpy模块并起别名为np
import numpy as np
# 显示当前numpy的版本号
print(np.__version__)
# 0.数组的概念
'''
数组是一个容器,它可以存放一定数量的元素,这些元素类型相同。
'''
# 1.创建一维数组
arr1 = np.array([1, 2, 3, 4])
print("创建数组:", arr1)
# 2.创建二维数组
'''
二维数组就是以数组作为数组元素的数组,通俗点说就是数组里面全是数组的数组。
'&...Go语言之Map映射
1429 views
Map映射
package main
import "fmt"
func main() {
// 声明Map
var m1 map[int]string
// 初始化空间
m1 = make(map[int]string, 3)
m1[1] = "one"
m1[2] = "two"
m1[3] = "three"
fmt.Println(m1)
fmt.Println(m1[1])
}
package main
import...Go语言基础之数组与切片
1618 views
Array数组
数组定义与初始化
数组定长的有序序列,元素类型相同,值类型的数据对象
package main
import "fmt"
func main() {
// 定义数组
var arr1 [3]int
// 初始化数组
arr1 = [3]int{0,0,0}
// 定义时初始化
arr2 := [3]int{1, 2, 3}
fmt.Println(arr1)
fmt.Println(arr2)
fmt.Printf("%T,%T&q...Jupyter notebook使用说明
3120 views
简介
Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。——Jupyter Notebook官方介绍
简而言之,Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示。如在编程过程中需要编写说明文档,可在同一个页面中直接编写,便于作及时的说明和解释。
Jupyter Notebook的主要特点:
-
编程时具有语法高亮、缩进、tab补全的功能。
-
可直接通过浏览器运行代码,同时在代码块下方展示运行结果。
-
以富媒体格式展示计算结果...