关于百度COR文字识别JAVA服务器端设置

https://blog.csdn.net/qq_22570497/article/details/77965497

首先要先下载百度云提供的JAVASDK

下载地址:http://ai.baidu.com/sdk

之后可以根据百度提供的文档进行开发,文档地址:http://ai.baidu.com/docs#/ASR-Online-Java-SDK/top

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

将下载的aip-speech-java-sdk-version.zip解压后,复制到工程文件夹中。

在Eclipse右键“工程 -> Properties -> Java Build Path -> Add JARs”。

添加SDK工具包speech_sdk-version.jar``aip-core-version.jar和第三方依赖工具包json-20160810.jar。(好像他提供的sdk中没有version.jar)

其中,version为版本号,添加完成后,用户就可以在工程中使用KG Java SDK。

新建Client

1.初始化一个Client。

 
  1. public class Sample {

  2.  
  3. //设置APPID/AK/SK

  4. public static final String APP_ID = "你的 App ID";

  5. public static final String API_KEY = "你的 Api ID";

  6. public static final String SECRET_KEY = "你的 Secret Key";

  7.  
  8. public static void main(String[] args) {

  9.  
  10. // 初始化一个FaceClient

  11. AipSpeech client = new AipSpeech(APP_ID, API_KEY, SECRET_KEY);

  12.  
  13. // 可选:设置网络连接参数

  14. client.setConnectionTimeoutInMillis(2000);

  15. client.setSocketTimeoutInMillis(60000);

  16.  
  17. // 调用API

  18. JSONObject res = client.asr("test.pcm", "pcm", 16000, null);

  19. System.out.println(res.toString(2));

  20. }

  21. }

在上面代码中,常量APP_ID在百度云控制台中创建,常量API_KEYSECRET_KEY是在创建完毕应用后,系统分配给用户的,均为字符串,用于标识用户,为访问做签名验证,可在AI服务控制台中的应用列表中查看。

接口调用

语音识别

接口描述

向远程服务上传整段语音进行识别

请求说明

  • 原始语音的录音格式目前只支持评测 8k/16k 采样率 16bit 位深的单声道语音
  • 压缩格式支持:pcm(不压缩)、wav、opus、speex、amr
  • 系统支持语言种类:中文(zh)、粤语(ct)、英文(en)。

举例:

 
  1. public void synthesis(AipSpeech client)

  2. {

  3. // 对本地语音文件进行识别

  4. String path = "D:\\code\\java-sdk\\speech_sdk\\src\\test\\resources\\16k_test.pcm";

  5. JSONObject asrRes = client.asr(path, "pcm", 16000, null);

  6. System.out.println(asrRes);

  7.  
  8. // 对语音二进制数据进行识别

  9. byte[] data = Util.readFileByBytes(path); //readFileByBytes仅为获取二进制数据示例

  10. JSONObject asrRes2 = client.asr(data, "pcm", 16000, null);

  11. System.out.println(asrRes);

  12.  
  13. // 对网络上音频进行识别

  14. String url = "http://somehost/res/16k_test.pcm";

  15. String callback = "http://callbackhost/aip/dump";

  16. JSONObject res = client.asr(url, callback, "pcm", 16000, null);

  17. System.out.println(res);

  18. }

接口函数说明:

 
  1. // 语音识别

  2. JSONObject asr(String path, String format, int rate, HashMap<String, Object> options);

  3. JSONObject asr(byte[] data, String format, int rate, HashMap<String, Object> options);

  4. JSONObject asr(String url, String callback, String format, int rate, HashMap<String, Object> options);

参数 类型 描述 是否必须
path/data String/byte[] 语音文件所在路径或二进制数据
url String 语音下载地址
callback String 识别结果回调地址
format String 包括pcm(不压缩)、wav、opus、speex、amr
rate int 采样率,支持 8000 或者 16000
cuid String 用户唯一标识,用来区分用户,填写机器 MAC 地址或 IMEI 码,长度为60以内
lan String 语种选择,中文=zh、粤语=ct、英文=en,不区分大小写,默认中文
ptc int 协议号,下行识别结果选择,默认 nbest 结果

语音识别 返回数据参数详情

参数 类型 是否一定输出 描述
err_no int 错误码
err_msg int 错误码描述
sn int 语音数据唯一标识,系统内部产生,用于 debug
result string 识别结果数组,提供1-5 个候选结果,string 类型为识别的字符串, utf-8 编码

返回样例:

 
  1. // 成功返回

  2. {

  3. "err_no": 0,

  4. "err_msg": "success.",

  5. "corpus_no": "15984125203285346378",

  6. "sn": "481D633F-73BA-726F-49EF-8659ACCC2F3D",

  7. "result": ["北京天气"]

  8. }

  9.  
  10. // 失败返回

  11. {

  12. "err_no": 2000,

  13. "err_msg": "data empty.",

  14. "sn": null

  15. }

错误码

错误码 含义
3300 输入参数不正确
3301 识别错误
3302 验证失败
3303 语音服务器后端问题
3304 请求 QPS 过大,超过限额
3305 产品线当前日请求数超过


------------

文字识别API

获取access_token示例代码

 
  1. import org.json.JSONObject;

  2.  
  3. import java.io.BufferedReader;

  4. import java.io.InputStreamReader;

  5. import java.net.HttpURLConnection;

  6. import java.net.URL;

  7. import java.util.List;

  8. import java.util.Map;

  9.  
  10. /**

  11. * 获取token类

  12. */

  13. public class AuthService {

  14.  
  15. /**

  16. * 获取权限token

  17. * @return 返回示例:

  18. * {

  19. * "access_token": "24.460da4889caad24cccdb1fea17221975.2592000.1491995545.282335-1234567",

  20. * "expires_in": 2592000

  21. * }

  22. */

  23. public static String getAuth() {

  24. // 官网获取的 API Key 更新为你注册的

  25. String clientId = "百度云应用的AK";

  26. // 官网获取的 Secret Key 更新为你注册的

  27. String clientSecret = "百度云应用的SK";

  28. return getAuth(clientId, clientSecret);

  29. }

  30.  
  31. /**

  32. * 获取API访问token

  33. * 该token有一定的有效期,需要自行管理,当失效时需重新获取.

  34. * @param ak - 百度云官网获取的 API Key

  35. * @param sk - 百度云官网获取的 Securet Key

  36. * @return assess_token 示例:

  37. * "24.460da4889caad24cccdb1fea17221975.2592000.1491995545.282335-1234567"

  38. */

  39. public static String getAuth(String ak, String sk) {

  40. // 获取token地址

  41. String authHost = "https://aip.baidubce.com/oauth/2.0/token?";

  42. String getAccessTokenUrl = authHost

  43. // 1. grant_type为固定参数

  44. + "grant_type=client_credentials"

  45. // 2. 官网获取的 API Key

  46. + "&client_id=" + ak

  47. // 3. 官网获取的 Secret Key

  48. + "&client_secret=" + sk;

  49. try {

  50. URL realUrl = new URL(getAccessTokenUrl);

  51. // 打开和URL之间的连接

  52. HttpURLConnection connection = (HttpURLConnection) realUrl.openConnection();

  53. connection.setRequestMethod("GET");

  54. connection.connect();

  55. // 获取所有响应头字段

  56. Map<String, List<String>> map = connection.getHeaderFields();

  57. // 遍历所有的响应头字段

  58. for (String key : map.keySet()) {

  59. System.err.println(key + "--->" + map.get(key));

  60. }

  61. // 定义 BufferedReader输入流来读取URL的响应

  62. BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));

  63. String result = "";

  64. String line;

  65. while ((line = in.readLine()) != null) {

  66. result += line;

  67. }

  68. /**

  69. * 返回结果示例

  70. */

  71. System.err.println("result:" + result);

  72. JSONObject jsonObject = new JSONObject(result);

  73. String access_token = jsonObject.getString("access_token");

  74. return access_token;

  75. } catch (Exception e) {

  76. System.err.printf("获取token失败!");

  77. e.printStackTrace(System.err);

  78. }

  79. return null;

  80. }

  81.  
  82. }

文字识别API,使用HTTPS POST发送:

https://aip.baidubce.com/rest/2.0/ocr/v1/general?access_token=24.f9ba9c5241b67688bb4adbed8bc91dec.2592000.1485570332.282335-8574074  (access_token从上方的方法中获得)

通用文字识别

先把代码粘过来吧:

这个是调用API的主体程序

 
  1. package testOCR.test;

  2.  
  3. import java.io.BufferedReader;

  4. import java.io.File;

  5. import java.io.InputStream;

  6. import java.io.InputStreamReader;

  7. import java.net.HttpURLConnection;

  8. import java.net.URL;

  9.  
  10. import testOCR.token.AuthService;

  11. import testOCR.util.BASE64;

  12.  
  13. public class OCRTest {

  14.  
  15. public static String request(String httpUrl, String httpArg) {

  16. BufferedReader reader = null;

  17. String result = null;

  18. StringBuffer sbf = new StringBuffer();

  19.  
  20. try {

  21. URL url = new URL(httpUrl);

  22. HttpURLConnection connection = (HttpURLConnection) url

  23. .openConnection();

  24. connection.setRequestMethod("POST");

  25. connection.setRequestProperty("Content-Type",

  26. "application/x-www-form-urlencoded");

  27. // 填入apikey到HTTP header

  28. connection.setRequestProperty("apikey", "o3k2WVmMY4opdeyIXk4WrxtP");

  29. connection.setRequestProperty("access_token", AuthService.getAuth());

  30. connection.setDoOutput(true);

  31. connection.getOutputStream().write(httpArg.getBytes("UTF-8"));

  32. connection.connect();

  33. InputStream is = connection.getInputStream();

  34. reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));

  35. String strRead = null;

  36. while ((strRead = reader.readLine()) != null) {

  37. sbf.append(strRead);

  38. sbf.append("\r\n");

  39. }

  40. reader.close();

  41. result = sbf.toString();

  42. } catch (Exception e) {

  43. e.printStackTrace();

  44. }

  45. return result;

  46. }

  47.  
  48.  
  49. /**

  50. * @param args

  51. */

  52. public static void main(String[] args) {

  53. File file = new File("d:\\aaa.png");

  54. String imageBase = BASE64.encodeImgageToBase64(file);

  55. imageBase = imageBase.replaceAll("\r\n","");

  56. imageBase = imageBase.replaceAll("\\+","%2B");

  57. String httpUrl = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_enhanced?access_token="+AuthService.getAuth();

  58. String httpArg = "fromdevice=pc&clientip=10.10.10.0&detecttype=LocateRecognize&languagetype=CHN_ENG&imagetype=1&image="+imageBase;

  59. String jsonResult = request(httpUrl, httpArg);

  60. System.out.println("返回的结果--------->"+jsonResult);

  61. }

  62. }


 

这个是将图片base64编码的工具类

 
  1. package testOCR.util;

  2.  
  3. import java.io.*;

  4.  
  5. import sun.misc.BASE64Encoder;

  6.  
  7. public class BASE64 {

  8. /**

  9. * 将本地图片进行Base64位编码

  10. *

  11. * @param imgUrl

  12. * 图片的url路径,如d:\\中文.jpg

  13. * @return

  14. */

  15. public static String encodeImgageToBase64(File imageFile) {// 将图片文件转化为字节数组字符串,并对其进行Base64编码处理

  16. // 其进行Base64编码处理

  17. byte[] data = null;

  18. // 读取图片字节数组

  19. try {

  20. InputStream in = new FileInputStream(imageFile);

  21. data = new byte[in.available()];

  22. in.read(data);

  23. in.close();

  24. } catch (IOException e) {

  25. e.printStackTrace();

  26. }

  27.  
  28. // 对字节数组Base64编码

  29. BASE64Encoder encoder = new BASE64Encoder();

  30. return encoder.encode(data);// 返回Base64编码过的字节数组字符串

  31. }

  32. }

 

这块上面的代码有,这是获取access_token的代码

 
  1. package testOCR.token;

  2.  
  3. import org.json.JSONObject;

  4.  
  5. import java.io.BufferedReader;

  6. import java.io.InputStreamReader;

  7. import java.net.HttpURLConnection;

  8. import java.net.URL;

  9. import java.util.List;

  10. import java.util.Map;

  11.  
  12. /**

  13. * 获取token类

  14. */

  15. public class AuthService {

  16.  
  17. /**

  18. * 获取权限token

  19. * @return 返回示例:

  20. * {

  21. * "access_token": "24.460da4889caad24cccdb1fea17221975.2592000.1491995545.282335-1234567",

  22. * "expires_in": 2592000

  23. * }

  24. */

  25. public static String getAuth() {

  26. // 官网获取的 API Key 更新为你注册的

  27. String clientId = "";

  28. // 官网获取的 Secret Key 更新为你注册的

  29. String clientSecret = "";

  30. return getAuth(clientId, clientSecret);

  31. }

  32.  
  33. /**

  34. * 获取API访问token

  35. * 该token有一定的有效期,需要自行管理,当失效时需重新获取.

  36. * @param ak - 百度云官网获取的 API Key

  37. * @param sk - 百度云官网获取的 Securet Key

  38. * @return assess_token 示例:

  39. * "24.460da4889caad24cccdb1fea17221975.2592000.1491995545.282335-1234567"

  40. */

  41. public static String getAuth(String ak, String sk) {

  42. // 获取token地址

  43. String authHost = "https://aip.baidubce.com/oauth/2.0/token?";

  44. String getAccessTokenUrl = authHost

  45. // 1. grant_type为固定参数

  46. + "grant_type=client_credentials"

  47. // 2. 官网获取的 API Key

  48. + "&client_id=" + ak

  49. // 3. 官网获取的 Secret Key

  50. + "&client_secret=" + sk;

  51. try {

  52. URL realUrl = new URL(getAccessTokenUrl);

  53. // 打开和URL之间的连接

  54. HttpURLConnection connection = (HttpURLConnection) realUrl.openConnection();

  55. connection.setRequestMethod("GET");

  56. connection.connect();

  57. // 获取所有响应头字段

  58. Map<String, List<String>> map = connection.getHeaderFields();

  59. // 遍历所有的响应头字段

  60. for (String key : map.keySet()) {

  61. System.err.println(key + "--->" + map.get(key));

  62. }

  63. // 定义 BufferedReader输入流来读取URL的响应

  64. BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));

  65. String result = "";

  66. String line;

  67. while ((line = in.readLine()) != null) {

  68. result += line;

  69. }

  70. /**

  71. * 返回结果示例

  72. */

  73. System.err.println("result:" + result);

  74. JSONObject jsonObject = new JSONObject(result);

  75. String access_token = jsonObject.getString("access_token");

  76. return access_token;

  77. } catch (Exception e) {

  78. System.err.printf("获取token失败!");

  79. e.printStackTrace(System.err);

  80. }

  81. return null;

  82. }

  83. public static void main(String[] args) {

  84. System.out.println(getAuth());

  85. }

  86. }


最后粘贴Controller,我用的是SSM框架,调用其实在程序主题中也已经有了,所以说这块可以忽略

 
  1. package testOCR.controller;

  2.  
  3. import java.io.File;

  4. import java.io.IOException;

  5. import java.util.HashMap;

  6. import java.util.List;

  7. import java.util.Map;

  8.  
  9. import javax.servlet.http.HttpServletRequest;

  10.  
  11. import net.sf.json.JSONObject;

  12.  
  13. import org.springframework.stereotype.Controller;

  14. import org.springframework.web.bind.annotation.RequestMapping;

  15. import org.springframework.web.bind.annotation.RequestParam;

  16. import org.springframework.web.multipart.MultipartFile;

  17.  
  18. import testOCR.model.ResultModel;

  19. import testOCR.model.Word;

  20. import testOCR.test.OCRTest;

  21. import testOCR.token.AuthService;

  22. import testOCR.util.BASE64;

  23.  
  24. @Controller

  25. public class OcrController {

  26. private static final int List = 0;

  27.  
  28. /**

  29. * 血糖数据提交

  30. * @param bloodGlucose

  31. * @return

  32. */

  33. @RequestMapping(value="/file")

  34. public String fileUpload(@RequestParam MultipartFile image,HttpServletRequest req){

  35.  
  36. String path=req.getSession().getServletContext().getRealPath("/image");

  37. System.out.println("真实路径"+path);

  38. try {

  39. image.transferTo(new File(path+"/"+image.getOriginalFilename()));

  40. } catch (IllegalStateException | IOException e) {

  41. e.printStackTrace();

  42. }

  43. File file = new File(path+"/"+image.getOriginalFilename());

  44. String imageBase = BASE64.encodeImgageToBase64(file);

  45. imageBase = imageBase.replaceAll("\r\n","");

  46. imageBase = imageBase.replaceAll("\\+","%2B");

  47. String httpUrl = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic?access_token="+AuthService.getAuth();

  48. String httpArg = "fromdevice=pc&clientip=10.10.10.0&detecttype=LocateRecognize&languagetype=CHN_ENG&imagetype=1&image="+imageBase;

  49. String jsonResult = OCRTest.request(httpUrl, httpArg);

  50. Map classMap = new HashMap();

  51. classMap.put("words_result",Word.class);

  52. JSONObject jsonobject = JSONObject.fromObject(jsonResult);

  53. ResultModel model=(ResultModel)JSONObject.toBean(jsonobject,ResultModel.class,classMap);

  54.  
  55. StringBuilder sb=new StringBuilder();

  56. List<Word> wordList=model.getWords_result();

  57.  
  58. if(wordList.size()<=0){

  59.  
  60. }else{

  61. for (Word word : wordList) {

  62.  
  63. sb.append(word.getWords()+"\n");

  64. }

  65. System.out.println(sb);

  66. }

  67. return "index.jsp";

  68. }

  69. }


 

如果用到上步的话缺少两个转换JSON用的实体类,我也给粘上来吧

 
  1. package testOCR.model;

  2.  
  3. import java.util.ArrayList;

  4. import java.util.List;

  5.  
  6. public class ResultModel {

  7. private String log_id;//登录id

  8. private String words_result_num;//识别结果数,表示words_result的元素个数 应该是行数

  9. private List<Word> words_result=new ArrayList<Word>();//结果列表

  10. public String getLog_id() {

  11. return log_id;

  12. }

  13. public void setLog_id(String log_id) {

  14. this.log_id = log_id;

  15. }

  16. public String getWords_result_num() {

  17. return words_result_num;

  18. }

  19. public void setWords_result_num(String words_result_num) {

  20. this.words_result_num = words_result_num;

  21. }

  22. public List<Word> getWords_result() {

  23. return words_result;

  24. }

  25. public void setWords_result(List<Word> words_result) {

  26. this.words_result = words_result;

  27. }

  28. @Override

  29. public String toString() {

  30. return "ResultModel [log_id=" + log_id + ", words_result_num="

  31. + words_result_num + ", words_result=" + words_result + "]";

  32. }

  33.  
  34. }


 

 
  1. package testOCR.model;

  2.  
  3. public class Word {

  4. String words;

  5.  
  6. public String getWords() {

  7. return words;

  8. }

  9.  
  10. public void setWords(String words) {

  11. this.words = words;

  12. }

  13.  
  14. @Override

  15. public String toString() {

  16. return "Word [words=" + words + "]";

  17. }

  18.  
  19.  
  20. }


 

 

接口描述

用户向服务请求识别某张图中的所有文字。

请求说明

请求示例

HTTP 方法:POST

请求URL: https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic

URL参数:

参数
access_token 通过API Key和Secret Key获取的access_token,参考“Access Token获取

Header如下:

参数
Content-Type application/x-www-form-urlencoded

Body中放置请求参数,参数详情如下:

请求参数

参数 是否必选 类型 可选值范围 说明
image 和url二选一 string - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
url 和image二选一 string - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
language_type false string CHN_ENG、ENG、POR、FRE、GER、ITA、SPA、RUS、JAP、KOR 识别语言类型,默认为CHN_ENG。可选值包括:
- CHN_ENG:中英文混合;
- ENG:英文;
- POR:葡萄牙语;
- FRE:法语;
- GER:德语;
- ITA:意大利语;
- SPA:西班牙语;
- RUS:俄语;
- JAP:日语;
- KOR:韩语
detect_direction false boolean true、false 是否检测图像朝向,默认不检测,即:false。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。可选值包括:
- true:检测朝向;
- false:不检测朝向。
detect_language false string true、false 是否检测语言,默认不检测。当前支持(中文、英语、日语、韩语)
probability false string true、false 是否返回识别结果中每一行的置信度

请求代码示例

请参考通用文字识别(含位置信息版)的代码内容,并更换请求地址。

返回说明

返回参数

字段 是否必选 类型 说明
direction int32 图像方向,当detect_direction=true时存在。
- -1:未定义,
- 0:正向,
- 1: 逆时针90度,
- 2:逆时针180度,
- 3:逆时针270度
log_id uint64 唯一的log id,用于问题定位
words_result array() 识别结果数组
words_result_num uint32 识别结果数,表示words_result的元素个数
+words string 识别结果字符串
probability object 识别结果中每一行的置信度值,包含average:行置信度平均值,variance:行置信度方差,min:行置信度最小值

返回示例

 
  1. HTTP/1.1 200 OK

  2. x-bce-request-id: 73c4e74c-3101-4a00-bf44-fe246959c05e

  3. Cache-Control: no-cache

  4. Server: BWS

  5. Date: Tue, 18 Oct 2016 02:21:01 GMT

  6. Content-Type: application/json;charset=UTF-8

  7. {

  8. "log_id": 2471272194,

  9. "words_result_num": 2,

  10. "words_result":

  11. [

  12. {"words": " TSINGTAO"},

  13. {"words": "青島睥酒"}

  14. ]

  15. }

错误码

错误码 错误信息 描述
1 Unknown error 服务器内部错误,请再次请求, 如果持续出现此类错误,请通过QQ群(224994340)或工单联系技术支持团队。
2 Service temporarily unavailable 服务暂不可用,请再次请求, 如果持续出现此类错误,请通过QQ群(224994340)或工单联系技术支持团队。
3 Unsupported openapi method 调用的API不存在,请检查后重新尝试
4 Open api request limit reached 集群超限额
6 No permission to access data 无权限访问该用户数据
17 Open api daily request limit reached 每天请求量超限额
18 Open api qps request limit reached QPS超限额
19 Open api total request limit reached 请求总量超限额
100 Invalid parameter 无效的access_token参数,请检查后重新尝试
110 Access token invalid or no longer valid access_token无效
111 Access token expired access token过期
282000 internal error 服务器内部错误,请再次请求, 如果持续出现此类错误,请通过QQ群(631977213)或工单联系技术支持团队。
216100 invalid param 请求中包含非法参数,请检查后重新尝试
216101 not enough param 缺少必须的参数,请检查参数是否有遗漏
216102 service not support 请求了不支持的服务,请检查调用的url
216103 param too long 请求中某些参数过长,请检查后重新尝试
216110 appid not exist appid不存在,请重新核对信息是否为后台应用列表中的appid
216200 empty image 图片为空,请检查后重新尝试
216201 image format error 上传的图片格式错误,现阶段我们支持的图片格式为:PNG、JPG、JPEG、BMP,请进行转码或更换图片
216202 image size error 上传的图片大小错误,现阶段我们支持的图片大小为:base64编码后小于4M,分辨率不高于4096*4096,请重新上传图片
216630 recognize error 识别错误,请再次请求,如果持续出现此类错误,请通过QQ群(631977213)或工单联系技术支持团队。
216631 recognize bank card error 识别银行卡错误,出现此问题的原因一般为:您上传的图片非银行卡正面,上传了异形卡的图片或上传的银行卡正品图片不完整
216633 recognize idcard error 识别身份证错误,出现此问题的原因一般为:您上传了非身份证图片或您上传的身份证图片不完整
216634 detect error 检测错误,请再次请求,如果持续出现此类错误,请通过QQ群(631977213)或工单联系技术支持团队。
282003 missing parameters: {参数名} 请求参数缺失
282005 batch processing error 处理批量任务时发生部分或全部错误,请根据具体错误码排查
282006 batch task limit reached 批量任务处理数量超出限制,请将任务数量减少到10或10以下
282114 url size error URL长度超过1024字节或为0
282808 request id: xxxxx not exist request id xxxxx 不存在
282809 result type error 返回结果请求错误(不属于excel或json)
282810 image recognize error 图像识别错误

猜你喜欢

转载自blog.csdn.net/fangquan1980/article/details/85222103