|
- 按键工程师
- 742060
- 2281
- 5
- 881 朵
- 10799 个
- 580 个
- 48300
- 2011-08-18
|
1#
t
T
发表于 2021-11-26 18:49
|
|只看楼主
现在官方自带的http的命令少了个提交文件的功能,美中不足Vn§W61bbs.anjian.com0¦/5U\W²无可奈何我就被迫营业封装了一个http的插件,可以支持upload功能Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²目前插件还是内测版本,功能不完善且概率存在一定BUG,后续会进行迭代更新Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²
功能特色Vn§W61bbs.anjian.com0¦/5U\W²
- 自定义header消息头Vn§W61bbs.anjian.com0¦/5U\W²
- 智能判定Content-Type类型Vn§W61bbs.anjian.com0¦/5U\W²
- 支持Android&IOS双端使用Vn§W61bbs.anjian.com0¦/5U\W²
- 统一的payload格式传入(table类型)Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²命令功能Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²SHTTP.Get(url, opts)Vn§W61bbs.anjian.com0¦/5U\W²
- 功能:发送Get请求Vn§W61bbs.anjian.com0¦/5U\W²
- 参数:Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- url: 必选,请求的urlVn§W61bbs.anjian.com0¦/5U\W²
- opts: 可选参数,包含以下参数的键值表headers: 自定义http消息头,可以是键值表或者字符串timeout: 请求超时时间,默认为10秒files: 上传文件路径Vn§W61bbs.anjian.com0¦/5U\W²
- 返回:返回请求结果Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²SHTTP.Post(url, data, opts)Vn§W61bbs.anjian.com0¦/5U\W²
- 功能:发送Get请求Vn§W61bbs.anjian.com0¦/5U\W²
- 参数:Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- url: 必选,请求的urlVn§W61bbs.anjian.com0¦/5U\W²
- data: 必选,需要提交的请求数据,用键值表或者key-value存放提交数据Vn§W61bbs.anjian.com0¦/5U\W²
- opts: 可选参数,包含以下参数的键值表headers: 自定义http消息头,可以是键值表或者字符串timeout: 请求超时时间,默认为10秒files: 上传文件路径Vn§W61bbs.anjian.com0¦/5U\W²
- 返回:返回请求结果Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²使用范例Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²简单的Get网页- Import "SHTTP.lua"Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- TracePrint SHTTP.Get("http://bbs.anjian.com/")Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
复制代码 附带请求头Get- Import "SHTTP.lua"Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Dim tHeaders = {null}Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
复制代码 发送post请求- Import "SHTTP.lua"Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Dim sUrl= "https://api.toolnb.com/Tools/Qrcode/qrcodeLogo.html"Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
复制代码- Import "SHTTP.lua"Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Dim tHeaders = {null}Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- tHeaders["user-agent"] = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36"Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
复制代码 通过post来提交文件- Import "SHTTP.lua"Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Dim sUrl= "https://api.toolnb.com/Tools/Qrcode/qrcodeLogo.html"Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
复制代码 Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²对接百度OCR识别API- Dim sUrl = "https://aip.baidubce.com/oauth/2.0/token"Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Dim tData = {null}Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- tData["grant_type"] = "client_credentials"Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- tData["client_id"] = "" // 填自己的client_idVn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- tData["client_secret"] = "" // 填自己的client_secretVn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Dim sJson, tJsonVn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- // 获取api的access_token值Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- sJson = SHTTP.Post(sUrl, tData)Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- tJson = Cjson.Decode(sJson)Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Dim Access_Token = tJson["access_token"]Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- sUrl = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic" & "?access_token=" & Access_TokenVn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- // 需要先将图片转成base64编码Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Dim ImgBase64 = ShanHai.ReadFileBase(GetSdcardDir() & "/Pictures/test.png")Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- // 对内容进行url编码Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- ImgBase64 = ShanHai.CharToUrl(ImgBase64)Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- sJson = SHTTP.Post(sUrl, {"image":ImgBase64},{"headers":{"Content-Type":"application/x-www-form-urlencoded"}})Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- tJson = Cjson.Decode(sJson)Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- For i = 1 To Len(tJson["words_result"])Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- TracePrint tJson["words_result"][i]["words"]Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
- NextVn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W²
Vn§W61bbs.anjian.com0¦/5U\W²
复制代码 Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²插件开源下载(回复可见):Vn§W61bbs.anjian.com0¦/5U\W² [attach]251160[/attach] Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²Vn§W61bbs.anjian.com0¦/5U\W² Vn§W61bbs.anjian.com0¦/5U\W²
|