common

package
v0.0.0-...-91dbda9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 16, 2020 License: GPL-3.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BuildRequest

func BuildRequest(method, url, referrer, cookie, os string, iscn, isjson bool, headers ...map[string]string) *httplib.BeegoHTTPRequest

构造request请求。[如果需要gzip压缩,请自行在headers参数配置,但是处理响应体的时候,记得使用gzip解压缩] @param method 请求方法:get、post、put、delete、head @param url 请求链接 @param referrer 如果有referrer,则配置该选项的header.注意:这里可以置空,然后在headers参数中配置 @param cookie 如果有cookie,则配置该选项的header.注意:这里可以置空,然后在headers参数中配置 @param os 操作系统,用于配置UA,参数值:windows、linux、Android、ios、mac。默认mac下的谷歌浏览器UA @param iscn 是否是中文请求,用于访问多语言的站点 @param isjson 是否请求的是json数据 @param headers 更多请求头配置项 @return 返回http请求

func Compress

func Compress(HtmlStr string, DoesTrimAllSpace ...bool) (NewHtmlStr string)

html压缩【非gzip压缩,只是去掉多余的空格或者是换行和tab】 @param HtmlStr 需要压缩的html字符串 @param DoesTrimAllSpace 是否存在预览的代码,如果html页面中存在code,如python代码等,则不能替换掉空格,所以这里要慎重 @return NewHtmlStr 处理后的html字符串

func CrawlFile

func CrawlFile(filelink string, savefolder string, timeout ...int) (file string, err error)

下载图片文件 @param filelink 需要采集的文件链接 @param savefolder 采集的文件存放路径 @param timeout 超时时间,默认30秒 @return filepath 采集下载返回的文件 @return err 错误。当不为nil的时候,文件不会存在

func Decrypt

func Decrypt(value, secret string) (decrypt string)

对称加密与解密之解密【从Beego中提取出来的】 @param value 需要解密的字符串 @param secret 密钥 @return decrypt 返回解密后的字符串

func Encrypt

func Encrypt(value, secret string) (encrypt string)

对称加密与解密之加密【从Beego中提取出来的】 @param value 需要加密的字符串 @param secret 加密密钥 @return encrypt 返回的加密后的字符串

func ExecValid

func ExecValid(val, rule string, args ...string) error

数据验证 @param val 字符串 @param rule 验证规则,见Valid()注释 @param args 变参参数 @return 返回验证错误

func InterfaceToFloat64

func InterfaceToFloat64(itf interface{}) (num float64, err error)

将interface数据转成float64[如果需要转成float32,直接float32(float64_number)即可] @param itf 需要转成整型的参数 @param num 转化结果 @param err 错误

func InterfaceToInt64

func InterfaceToInt64(itf interface{}) (num int64, err error)

将interface数据转成int64[如果需要转成int,直接int(int64_number)即可] @param itf 需要转成整型的参数 @param num 转换结果 @param err 错误

func InterfaceToJson

func InterfaceToJson(itf interface{}) string

将interface数据转json @param itf 将数据转成json @return 返回json字符串

func Md2html

func Md2html(MarkdownContent string) (html string)

将markdown内容转成html内容 @param MarkdownContent markdown文本内容 @return html 转化后的html

func Md5Crypt

func Md5Crypt(str string, salt ...interface{}) (CryptStr string)

MD5加密 @param str 需要加密的字符串 @param salt 盐值 @return CryptStr 加密后返回的字符串

func OpenByBrowser

func OpenByBrowser(uri string) (err error)

golang调用浏览器打开指定链接 @param uri 需要打开的url链接地址 @return err 错误

func ParseUrlQuery

func ParseUrlQuery(QueryStr string) (params map[string]interface{})

url的query请求解析,如:http://example.com?name=truthhun&age=18&hobbies[]=football&hobbies[]=swimming,则这里的QueryStr为问号后面的部分 @param QueryStr 请求字符串 @return params 解析后的参数,如果有select或者checkbox等多选的情况下,则interface{}为[]string类型,否则都是string,在使用的时候,用类型断言即可 需要注意的是,如果请求参数中的参数名带有“[]”,那么解析后的参数中也是带有中括号的 功能类似url.ParseQuery

func Sha1Crypt

func Sha1Crypt(str string, salt ...interface{}) (CryptStr string)

SHA1加密 @param str 需要加密的字符串 @param salt 盐值 @return CryptStr 加密后返回的字符串

func Unzip

func Unzip(zipFile, dest string) (err error)

解压zip文件 @param zipFile 需要解压的zip文件 @param dest 需要解压到的目录 @return err 返回错误

func UpperFirst

func UpperFirst(str string) string

首字母大写 @param str 需要对首字母进行大写的字符串 @return 范湖

func Valid

func Valid(params url.Values, rules map[string][]string) (map[string]interface{}, map[string]string)

参数验证 规则中,required表示必传参数,有无值则是另外一回事 验证规则有以下(大小写不敏感): 1、required 参数必传,有无值则是另外一回事,使用示例:"required" 1、unempty 值不能为空,使用示例:"unempty" 2、min 最小值验证,使用示例:"min:1" 3、max 最大值验证,使用示例:"max:1000" 4、minlen、mincount 最小长度验证,使用示例:"minlen:2" 说明:count是字符个数校验,len是字节个数校验,如"地球",如果是len,则是6个字节,如果是count,则是2个字符 5、maxlen、maxcount 最大长度验证,使用示例:"maxcount:255" 说明:count是字符个数校验,len是字节个数校验,如"地球",如果是len,则是6个字节,如果是count,则是2个字符 6、len、count 字符串长度验证,使用示例:"len:40" 说明:count是字符个数校验,len是字节个数校验,如"地球",如果是len,则是6个字节,如果是count,则是2个字符 7、email 邮箱格式验证,使用示例:"email" 8、tel 座机号码格式验证,使用示例:"tel" 9、mobile 手机号码格式验证,使用示例:"mobile" 10、phone 电话号码格式验证,包括手机号码和座机号码,使用示例:"phone" 11、enum 参数值验证,参数值只能是其中指定的一个值,使用示例:"enum:男:女:保密" 12、range 参数区间,适用于数字变化范围,使用示例:"range:1:100" 13、int,int8,int32,int64,float32,float64,string 只要有这些数据类型的字段,则表示类型转换,使用示例:"int64" 14、zipcode 邮政编码验证,使用示例:"zipcode" 15、ip IP地址格式验证,使用示例:"ip" 16、alpha 字符验证,字符必须是大小写字母,使用示例:"alpha" 17、numeric 数字验证,必须是0-9中的数字,使用示例:"numeric" 18、alphanumeric 大小写字母和数字验证,值必须是大小写字母和数字,使用示例:"alphanumeric" 19、alphadash 大小写字母、数字、横杠(-_)验证,使用示例:"alphadash" 20、gt,lt,gte,lte 大于、小于、大于等于或者小于等于指定数值:使用示例:"gt:0" 说明:如果是等于指定数值,使用enum,如"enum:1",即等于1 21、regexp 正则校验,使用示例:"regexp:[a-zA-z0-9\.\-\_]{10}",第一个冒号后面的表示正则规则 ############################################ @param params url.Values参数 @param rules 验证规则 @return 返回验证后通过的数据 @return 返回错误的map

func Zip

func Zip(dest string, filepath ...string) (err error)

压缩指定文件或文件夹 @param dest 压缩后的zip文件目标,如/usr/local/hello.zip @param filepath 需要压缩的文件或者文件夹 @return err 错误。如果返回错误,则会删除dest文件

Types

type FileList

type FileList struct {
	IsDir   bool   //是否是目录
	Path    string //文件路径
	Ext     string //文件扩展名
	Name    string //文件名
	Size    int64  //文件大小
	ModTime int64  //文件修改时间戳
}

返回的目录扫描结果

func ScanFiles

func ScanFiles(dir string) (fl []FileList, err error)

目录扫描 @param dir 需要扫描的目录 @return fl 文件列表 @return err 错误

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL