Documentation ¶
Index ¶
- func BuildRequest(method, url, referrer, cookie, os string, iscn, isjson bool, ...) *httplib.BeegoHTTPRequest
- func Compress(HtmlStr string, DoesTrimAllSpace ...bool) (NewHtmlStr string)
- func CrawlFile(filelink string, savefolder string, timeout ...int) (file string, err error)
- func Decrypt(value, secret string) (decrypt string)
- func Encrypt(value, secret string) (encrypt string)
- func ExecValid(val, rule string, args ...string) error
- func InterfaceToFloat64(itf interface{}) (num float64, err error)
- func InterfaceToInt64(itf interface{}) (num int64, err error)
- func InterfaceToJson(itf interface{}) string
- func Md2html(MarkdownContent string) (html string)
- func Md5Crypt(str string, salt ...interface{}) (CryptStr string)
- func OpenByBrowser(uri string) (err error)
- func ParseUrlQuery(QueryStr string) (params map[string]interface{})
- func Sha1Crypt(str string, salt ...interface{}) (CryptStr string)
- func Unzip(zipFile, dest string) (err error)
- func UpperFirst(str string) string
- func Valid(params url.Values, rules map[string][]string) (map[string]interface{}, map[string]string)
- func Zip(dest string, filepath ...string) (err error)
- type FileList
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 ¶
html压缩【非gzip压缩,只是去掉多余的空格或者是换行和tab】 @param HtmlStr 需要压缩的html字符串 @param DoesTrimAllSpace 是否存在预览的代码,如果html页面中存在code,如python代码等,则不能替换掉空格,所以这里要慎重 @return NewHtmlStr 处理后的html字符串
func CrawlFile ¶
下载图片文件 @param filelink 需要采集的文件链接 @param savefolder 采集的文件存放路径 @param timeout 超时时间,默认30秒 @return filepath 采集下载返回的文件 @return err 错误。当不为nil的时候,文件不会存在
func Decrypt ¶
对称加密与解密之解密【从Beego中提取出来的】 @param value 需要解密的字符串 @param secret 密钥 @return decrypt 返回解密后的字符串
func Encrypt ¶
对称加密与解密之加密【从Beego中提取出来的】 @param value 需要加密的字符串 @param secret 加密密钥 @return encrypt 返回的加密后的字符串
func InterfaceToFloat64 ¶
将interface数据转成float64[如果需要转成float32,直接float32(float64_number)即可] @param itf 需要转成整型的参数 @param num 转化结果 @param err 错误
func InterfaceToInt64 ¶
将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 OpenByBrowser ¶
golang调用浏览器打开指定链接 @param uri 需要打开的url链接地址 @return err 错误
func ParseUrlQuery ¶
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 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