按键精灵示例 插件下载

Import "Cjson.lua"
Import "bt.lua"
Import "ShanHai.lua"

Dim json, table,Result,ID


--------- 以下是您需要修改的值 --------------

//你的帐号
Dim username="******"
//你的密码
Dim password="******"
//类型id
Dim typeid="1000"

//主图,根据实际情况修改图片名称和位置信息
SnapShot "/sdcard/image.jpg", 222, 274, 530, 589
//主图路劲 filepath
Dim filepath = GetSdcardDir() & "/image.jpg"

//副图,类型为1306和1316时需要,根据实际开发自己定义
-- SnapShot "/sdcard/subimage.jpg", 222, 274, 530, 589
-- Dim subfilepath = GetSdcardDir() & "/subimage.jpg"

--------- 需要修改的值结束  ----------------



If Dir.Exist(filepath) Then
    TracePrint "存在"
Else

    TracePrint "不存在"
End If

TracePrint filepath

json = bt.bt_sendcode(username, password, filepath, typeid)

//类型为1306和1316时需要,根据实际开发自己定义
-- json = bt.bt_sendcode(username, password, filepath, typeid, subfilepath)


TracePrint json
// 运行报错 请去除json < >的空格
// 运行报错 请去除json < >的空格
If json and json < > "" Then
    TracePrint json
    table = Cjson.Decode(json)
    If table Then
        If table["code"] = "0" Then
            ID = table["data"]["captchaId"]
            //识别结果
            Result =table["data"]["recognition"]
            TracePrint "验证码识别结果为: ", Result
        Else
            TracePrint "验证码识别失败"
        End If
    End If
Else
    TracePrint "发送HTTP请求失败"
End If

请求接口地址

请求参数

{
    "username":"admin",
    "password":"123456",
    "captchaData":"/9j/4AAQ...示例省略若干位(图片文件内容的base64结果)...==",
    "captchaType":1001
}
  • username:注册用户名
  • password:登录密码
  • captchaData:图片文件内容,base64后的数据
  • captchaType:识别类型(整形),,请查阅识别分类

响应数据

{"code":0, "message":"", "data":{"captchaId":"1001-158201918112812","recognition":"RESULT"}}
  • code:统一错误返回
  • message:统一错误信息返回,正常为空
  • data->captchaId:识别ID(非数字格式,预留40字节字符串长度)
  • data->recognition:识别结果

提示

  • 简单图,英文字母、数字直接返回。全部大写化处理。
  • 中文图,可能返回中文 或者返回 JSON标准的unicode u4e2du6587 ,需要接入方使用标准JSON解析库自动处理。
  • 坐标图,返回 | 和 , 分割的相对图片左上角像素坐标, 100,102|200,202
  • 核心提示
    • 获取结果接口为长连接阻塞式,不需要轮询获取结果。此接口为长连接阻塞模式。正常情况下,此接口会阻塞HTTP请求,直至有识别结果返回。所以接入方发起HTTP请求时, 应当 将此接口的超时时间设置为 60秒 。
    • 为了防止网络问题导致长连接断开。接入方客户端应当在此接口没有返回任何 HTTP状态码 时(即网络故障),跳过本条,下次请求随机间隔 0.2 ~ 1.5 秒。
    • 如遇任何错误,例如用户密码错误、点数不足,重新上传时,必须间隔3秒以上,防止无意义的重试。否则服务器会认为恶意攻击封禁IP。