挣码答题打码验证码API之http方式说明 挣码API使用方式 API接口都分为两种Ansichar字符的和widechar宽字符的 1、设置软件信息 function SetSoftInfoA(const lpSoftID, lpSoftKey: LPSTR): LongInt; stdcall; function SetSoftInfoW(const lpSoftID,lpSoftKey: LPWSTR): LongInt; stdcall; 设置和验证软件是否有效。必须验证。重新生成SoftKey后,则原来的软件就没法验证通过。 参数: lpSoftID软件ID. lpSoftKey软件通讯Key 这两个值可以在开发者管理后台创建新软件后生成 返回: -1002 其他未知错误 -1001服务器返回出错 -1000访问服务器失败 -2 SoftKey错误 -3 SoftID不存在 0 成功 2.登录扣费账户 function LoginA(const lpUserName,lpPassword: LPSTR; var lpUID:LPSTR;var nType:LongInt): LongInt; stdcall; function LoginW(const lpUserName,lpPassword: LPWSTR; var lpUID:LPWSTR;var nType:LongInt): LongInt; stdcall; 用来登录扣费账户。打码扣该登录账户的钱 参数:lpUserName 用户名 lpPassword 密码 lpUID 调用成功后返回用户ID nType 调用成功后返回用户类型 1是普通账户 2开发者账户 返回: -1002 其他未知错误 -1001服务器返回出错 -1账号或密码错误 0 成功 3、识别验证码 function RecognizeByPathA(lpPicPath: LPSTR;var pCodeResult:LPSTR; nAsyn: LongInt=0;nCodeType:LongInt=0; nTimeOut:LongInt=60;lpHint:LPSTR=PAnsiChar(#0) ):LongInt; stdcall; //通过路径识别验证码 function RecognizeByPathW(lpPicPath: LPWSTR;var pCodeResult:LPWSTR; nAsyn: LongInt=0;nCodeType:LongInt=0; nTimeOut:LongInt=60;lpHint:LPWSTR=PWideChar(#0) ):LongInt; stdcall; 通过文件识别验证码 参数: lpPicPath 文件的本地路径 pCodeResult 成功后返回的验证码Json {CodeID:'5459ce0bb98b1df3fc7acdbd', ImgUrl:'http://zhengma.b0.upaiyun.com/2014/11/05/d59e97c2eaf5dd4f0b422d17224315da.bmp',CreateTime:'2014-11-05 15:13:15',TextTime:'2014-11-05 15:13:21',Text:'sdff'} nAsyn 是否同步 0不同步 1同步 默认0 nCodeType 验证码类型默认是0表示使用后台登记的码类型。填其他类型则以API为主。如果不知道码类型可以填杂码类型 (80016) nTimeOut 验证码的超时时间 lpHint 提示信息 返回: -1003不是有效的图片文件 -1002 其他未知错误 -1001服务器返回出错 -21等待队列过多 -12 图片文件过大 -11 图片文件不存在 -7 验证码超时 -6 余额不足 -5; codeType不存在或错误 -4; sign验证错误 -3; SoftID错误 0 成功 function RecognizeByBytesA(lpPicContent:LPSTR; nPicLen:LONGLONG; var pCodeResult:LPSTR;nAsyn: LongInt=0; nCodeType:LongInt=0; nTimeOut:LongInt=60;lpHint:LPSTR=PAnsiChar(#0)):LongInt; stdcall; function RecognizeByBytesW(lpPicContent:LPWSTR; nPicLen:LONGLONG; var pCodeResult:LPWSTR;nAsyn: LongInt=0; nCodeType:LongInt=0; nTimeOut:LongInt=60;lpHint:LPWSTR=PWideChar(#0)):LongInt; stdcall; 通过字节流识别验证码 参数: lpPicContent 字节流指针 nPicLen字节流长度 pCodeResult 成功后返回的验证码Json {CodeID:'5459ce0bb98b1df3fc7acdbd', ImgUrl:'http://zhengma.b0.upaiyun.com/2014/11/05/d59e97c2eaf5dd4f0b422d17224315da.bmp',CreateTime:'2014-11-05 15:13:15',TextTime:'2014-11-05 15:13:21',Text:'sdff'} nAsyn 是否同步 0不同步 1同步 默认0 nCodeType 验证码类型默认是0表示使用后台登记的码类型。填其他类型则以API为主。如果不知道码类型可以填杂码类型(80016) nTimeOut 验证码的超时时间 lpHint 提示信息 返回: -1003不是有效的图片文件 -1002 其他未知错误 -1001服务器返回出错 -21等待队列过多 -12 图片文件过大 -11 图片文件不存在 -7 验证码超时 -6 余额不足 -5; codeType不存在或错误 -4; sign验证错误 -3; SoftID错误 0 成功 4、获取验证码结果 function GetCodeTextA(lpCodeID:LPSTR;var pCodeResult:LPSTR):LongInt;stdcall; function GetCodeTextW(lpCodeID:LPWSTR;var pCodeResult:LPWSTR):LongInt; stdcall; 当异步模式调用识别验证码接口时。会立即返回一个CodeID。通过本API可以得到结果值 参数: lpCodeID 验证码ID pCodeResult 识别的验证码Json(和同步的返回一样) 返回: -1002 其他未知错误 -1001服务器返回出错 -15 验证码未返回 -10 codeID不存在 -7 验证码超时 0 成功 5、解析识别的Json字符串 function ParserCodeTextJsonA(lpCodeTextJson:LPSTR;var pCodeResult:LPSTR):LongInt;stdcall; function ParserCodeTextJsonW(lpCodeTextJson:LPWSTR;var pCodeResult:LPWSTR):LongInt;stdcall; 参数: lpCodeTextJson 验证码识别结果的Json字符串 pCodeResult 得到验证码的文本(最终结果) 返回: -1 解析错误 0 成功 6.申述验证码 function ComplainCodeA(lpCodeID:LPSTR):LongInt; stdcall; function ComplainCodeW(lpCodeID:LPWSTR):LongInt; stdcall; 返回的验证码错误,用来申述返钱(申述处理时间最迟3天) 参数:lpCodeID 验证码ID 返回 -1002 其他未知错误 -1001服务器返回出错 -17 该码没打码成功,没扣钱 -16 返钱失败 -13 codeID已经申诉过 -10 codeID不存在 0 成功 7、注销用户 function LogoutA:LongInt; stdcall; //用户登出 function LogoutW:LongInt; stdcall; 要换用户登录的时候先注销 返回:0 成功 8、获取用户余额 function GetUserBalanceA(var nBalance:LongInt):LongInt;stdcall; //获取余额 function GetUserBalanceW(var nBalance:LongInt):LongInt;stdcall; 登录后调用该接口获得余额 参数:nBalance 成功后返回余额 返回: -1002 其他未知错误 -1001服务器返回出错 -22 没有权限 -8 用户ID不存在 0 成功 |