MyService


单击此处,获取完整的操作列表。

ReadCardModeAccurateQR

“读卡模式”精确扫描二维码,上传到服务器解码
参数
string Token:Token
string Key:解密密匙【Z-M900、Z-M900 Pro 为 登录接口 LoginOperators 返回的 ErWeiMaStr 属性】
string QRString:读取二维码上面的字符串
string ScanTime:扫描时间(加密前的格式为 yyyy-MM-dd HH:mm:ss)加密
string SubmitTime:数据提交时间(加密前的格式为 yyyy-MM-dd HH:mm:ss)加密
string PreCode:第一次调用,默认为 0 ,【当上次调用错误(返回的 Result != 0 且 Result > 0)时,将返回结果中的 CheckCode2 属性值赋值给 PreCode ,再一次调用】,加密
string DeviceSN:二维码设备的机号【二维码地址卡的卡号】,第一次调用,默认为 0 ,【当上次调用错误(返回的 Result != 0 且 Result > 0)时,将返回结果中的 DeviceSN 属性值赋值给 DeviceSN ,再一次调用】,加密

返回结构:
public class SimpleResult
{
    public string Result; // 错误代码
                错误代码分四种:
                1、第一种:Result = -1 表示调用方法的过程中出现问题,可以再一次调用或者程序错误,直接联系管理员;
                2、第二种:Result < 0 具体说只有 -2、-31 两个值,此时表示 Token 出现问题,只能退出APP,重新登录后,再一次操作;
                3、第三种:Result = 4020 ,表示需要校时(更换了电池或者其他原因导致),APP在等待 CheckCode2 秒后 ,第二次扫码调用方法 ReadCardModeAccurateQR 【再一次调用接口时,将 CheckCode2 赋值给 PreCode,将 DeviceSN 赋值给 DeviceSN】;
                4、第四种:Result > 0 同时 Result != 4020,此时表示在解码的过程中出现问题,直接提示错误就可以了,等待APP再次扫码调用接口;
    public string Message; // 返回的信息【Result = -1 时,程序错误原因】
                【 返回值 Result > 0 时,返回json字符串,经过解析,对返回的字符串属性做如下说明:】
                DeviceSN 动态二维码生成器生成的地址卡号,八位长度十六进制字符串:00897932
                CheckCode
                CheckCode2 校时需要等待的时间(单位:秒)
                Battery 动态二维码生成器生成的电池电量,4482mV
                ManufactureTime 设备生产时间,2023-05-09T18:40:00,标准UTC时间
                ManufactureTimeStr设备生产时间,2023-05-09 18:40:00
                QRStr 动态二维码生成器生成生成的加密后的地址卡字符串 000000062E080D2F38C59D3348A35412D68D4024/04ED337302CC82BB750CFC7DD0488F1B ,如果字符串中包含字符 / 则为新版的精确二维码;不包含,则为旧版的普通二维码
                ScanTime 手机APP扫描二维码日期、时间,2024-05-21T15:36:23 标准UTC时间
                ScanTimeStr 手机APP扫描二维码时间 15:36:23
                DecodeTime 调用接口到服务器解码时间 2024-05-21T15:36:24.0164434+08:00 标准UTC时间
                DecodeTimeStr 调用接口到服务器解码时间 15:36:24
                RetCode 解码过程中的错误代码 4020
                ErrorStr 解码过程中的错误描述以及代码 当前为更换电池,请重新扫码进行校时,4020
                
}

返回值
Result描述
Result=0解码成功
Result=-1错误, Message 为错误信息
Result=-2Token非法
Result=-31Token 失效
Result=4001密钥文件打开失败
Result=4002密钥文件写失败
Result=4003密钥文件读失败
Result=4004密钥文创建失败
Result=4005密钥文件与二维码不匹配
Result=4000二维码解码成功,但二维码版本不支持高级功能
Result=4016二维码已经过期
Result=4017二维码数据库连接错误
Result=4018扫码时间或提交时间格式错误
Result=4019扫码中断和服务器时间差异超过有效范围
Result=4020当前为更换电池,请重新扫码进行校时
Result=4021换电池校时,不在卡号和记录
Result=4022校时操作,卡号校验错误

测试

若要使用 HTTP POST 协议对操作进行测试,请单击“调用”按钮。
参数
Token:
Key:
QRString:
ScanTime:
SubmitTime:
PreCode:
DeviceSN:

SOAP 1.1

以下是 SOAP 1.2 请求和响应示例。所显示的占位符需替换为实际值。

POST /MyService.asmx HTTP/1.1
Host: www.zooytech.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://tempuri.org/ReadCardModeAccurateQR"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <ReadCardModeAccurateQR xmlns="http://tempuri.org/">
      <Token>string</Token>
      <Key>string</Key>
      <QRString>string</QRString>
      <ScanTime>string</ScanTime>
      <SubmitTime>string</SubmitTime>
      <PreCode>string</PreCode>
      <DeviceSN>string</DeviceSN>
    </ReadCardModeAccurateQR>
  </soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <ReadCardModeAccurateQRResponse xmlns="http://tempuri.org/">
      <ReadCardModeAccurateQRResult>string</ReadCardModeAccurateQRResult>
    </ReadCardModeAccurateQRResponse>
  </soap:Body>
</soap:Envelope>

SOAP 1.2

以下是 SOAP 1.2 请求和响应示例。所显示的占位符需替换为实际值。

POST /MyService.asmx HTTP/1.1
Host: www.zooytech.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <ReadCardModeAccurateQR xmlns="http://tempuri.org/">
      <Token>string</Token>
      <Key>string</Key>
      <QRString>string</QRString>
      <ScanTime>string</ScanTime>
      <SubmitTime>string</SubmitTime>
      <PreCode>string</PreCode>
      <DeviceSN>string</DeviceSN>
    </ReadCardModeAccurateQR>
  </soap12:Body>
</soap12:Envelope>
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <ReadCardModeAccurateQRResponse xmlns="http://tempuri.org/">
      <ReadCardModeAccurateQRResult>string</ReadCardModeAccurateQRResult>
    </ReadCardModeAccurateQRResponse>
  </soap12:Body>
</soap12:Envelope>

HTTP GET

以下是 HTTP GET 请求和响应示例。所显示的占位符需替换为实际值。

GET /MyService.asmx/ReadCardModeAccurateQR?Token=string&Key=string&QRString=string&ScanTime=string&SubmitTime=string&PreCode=string&DeviceSN=string HTTP/1.1
Host: www.zooytech.com
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/">string</string>

HTTP POST

以下是 HTTP POST 请求和响应示例。所显示的占位符需替换为实际值。

POST /MyService.asmx/ReadCardModeAccurateQR HTTP/1.1
Host: www.zooytech.com
Content-Type: application/x-www-form-urlencoded
Content-Length: length

Token=string&Key=string&QRString=string&ScanTime=string&SubmitTime=string&PreCode=string&DeviceSN=string
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/">string</string>