
API請求 – 什么是API請求?
– API 集成: 開發者按照文檔中的指引,將 API 集成到自己的應用程序中。
在Java中,下面這段代碼展示了如何使用 Java 發送 HTTP POST 請求到營業執照OCR識別服務,以及如何處理服務的響應。需要注意的是,其中的 HttpUtils
類和依賴項需要從提供的鏈接下載并引入。此外,AppCode
部分需要替換為實際的應用程序代碼。
import com.mittang.util.HttpUtils;
import org.apache.http.HttpResponse;
import org.apache.http.util.EntityUtils;
import java.util.HashMap;
import java.util.Map;
public class Example {
public static void main(String[] args) throws Exception{
String host = "https://open.expauth.com";
String path = "/v2/ocr/business-license";
String method = "POST";
// "{{AppCode}}" 替換成您的 AppCode
String appcode = "{{AppCode}}";
Map headers = new HashMap();
headers.put("X-Mce-Signature", "AppCode/" + appcode);
headers.put("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
Map querys = new HashMap();
Map bodys = new HashMap();
// 填充參數
bodys.put("img", "img"); try {
/**
* 重要提示如下:
* HttpUtils請從
* https://static.miitang.com/saas/simple/HttpUtils.java 下載
*
* 相應的依賴請參照
* https://static.miitang.com/saas/simple/pom.xml
*/
HttpResponse response = HttpUtils.doPost(host, path, method, headers, querys, bodys);
// 獲取 response 的 body
String resStr = EntityUtils.toString(response.getEntity());
System.out.println(resStr);
int statusCode = response.getStatusLine().getStatusCode();
if(statusCode == 200){
// 請求成功,可根據業務碼(請求體中的code)進行邏輯處理
} else if(statusCode == 610){
// 用戶輸入的參數問題,可直接提示用戶
} else if(statusCode == 611){
// 系統準備的數據問題,如 文件數據下載失敗、數據不存在、數據重復請求等。 LOG it and 提示用戶
} else if(statusCode == 612){
// 用戶操作頻度問題,可提示用戶。 LOG it and 按業務特點做處理
} else if(statusCode >= 500 && statusCode < 600){
// 在運行階段發生的系統穩定性問題,客戶端可以重試,或者聯系我司客服
} else {
// 如賬戶密碼錯誤、IP白名單問題、余額不足等,您應該在對接過程中解決相關問題。
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
在Python中,使用 requests
庫發送 POST 請求到營業執照OCR識別服務接口,根據響應狀態碼進行業務邏輯處理,包括成功、參數問題、數據問題、操作頻度問題和系統穩定性問題等的處理。
import json
import requests
if __name__ == '__main__': url = "https://open.expauth.com/v2/ocr/business-license" payload = json.dumps({
"img": "img"
}) headers = {
"Content-Type": "application/json",
# "{{AppCode}}" 替換為您的 AppCode
"X-Mce-Signature": "AppCode/{{AppCode}}"
} response = requests.request("POST", url, headers=headers, data=payload)
status_code = response.status_code
print("headers:", response.headers)
print("http 狀態碼:", str(status_code))
print(response.text)
if status_code == 200:
"請求成功,可根據業務碼(請求體中的code)進行邏輯處理"
elif status_code == 610 :
"用戶輸入的參數問題,可直接提示用戶"
elif status_code == 611 :
"系統準備的數據問題,如 文件數據下載失敗、數據不存在、數據重復請求等。 LOG it and 提示用戶"
elif status_code == 612 :
"用戶操作頻度問題,可提示用戶。 LOG it and 按業務特點做處理"
elif status_code >= 500 & status_code < 600 :
"在運行階段發生的系統穩定性問題,客戶端可以重試,或者聯系我司客服"
else:
"如賬戶密碼錯誤、IP白名單問題、余額不足等,您應該在對接過程中解決相關問題。"
在PHP中,使用 cURL 發送 POST 請求到營業執照OCR識別服務接口,處理并輸出相應的業務邏輯。它包括設置請求頭、發送請求、處理響應,根據響應狀態碼進行不同的業務邏輯處理,如成功、參數問題、數據問題、操作頻度問題、系統穩定性問題等。
$value){
foreach($value as $key2=>$value2){
$errorMap[$key] = $value2;
break;
}
}
// 轉化為 key:tip
echo($errorMap["idCardNo"].PHP_EOL);
echo($errorMap["name"].PHP_EOL);
} else if($httpCode == 611){
// 系統準備的數據問題,如 文件數據下載失敗、數據不存在、數據重復請求等。 LOG it and 提示用戶
echo "修訂數據狀態,不要重復操作。".PHP_EOL;
} else if($httpCode == 612){
// 用戶操作頻度問題,可提示用戶。 LOG it and 按業務特點做處理
echo $retMap["message"].PHP_EOL;
} else if($httpCode >= 500 && $httpCode
通過光學字符識別技術,實現了營業執照信息的自動提取和識別,從而提高了信息錄入效率和準確性。該技術適用于企業所有者、會計師、政府機構等不同人群,并可以通過API在不同編程語言中調用。總體而言,營業執照OCR識別技術推動了信息化、數字化管理,為企業和相關管理部門提供了更高效、準確和智能化的解決方案。