文本机器结果反馈接口
2024.09.25 11:34:06
接口地址
http://as.dun.163.com/v2/text/feedback
接口描述
根据taskId,接口反馈修正文本机器结果。建议您使用POST请求, 且仅接受 application/x-www-form-urlencoded 编码格式。
请求参数
公共参数已省略,详细见 请求公共参数,其他参数如下:
参数名称 | 类型 | 是否必选 | 最大长度 | 描述 |
---|---|---|---|---|
feedbacks | String(json数组) | Y | json数组长度最多100 | 反馈主要参数,支持批量反馈 |
version | String | Y | 当前默认版本号v2 | 与接口地址保持一致 |
feedbacks参数结构说明:
参数名称 | 类型 | 是否必选 | 描述 |
---|---|---|---|
taskId | String | Y | 在线检测接口返回的请求数据标识 |
level | Number | Y | 数据分类级别,0:正常,2:确定 |
label | Number | Y | 分类信息,100:色情,200:广告,260:广告法,400:违禁,500:涉政,600:谩骂,700:灌水,1100:涉价值观,当返回通过时,label字段可不传。 |
响应结果
响应字段如下,响应通用字段已省略,详细见响应通用字段:
result 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
taskId | String | 返回taskId值 |
result | Int | 更改状态,0:成功,1:更改失败,服务器异常,2:taskid不存在或者不是7天以内的数据 |
请求示例
/** 产品密钥ID,产品标识 */
private final static String SECRETID = "your_secret_id";
/** 产品私有密钥,服务端生成签名信息使用,请严格保管,避免泄露 */
private final static String SECRETKEY = "your_secret_key";
/** 业务ID,易盾根据产品业务特点分配 */
private final static String BUSINESSID = "your_business_id";
/** 易盾反垃圾云服务文本反馈接口地址 */
private final static String API_URL = "http://as.dun.163.com/v2/text/feedback";
/** 实例化HttpClient,发送http请求使用,可根据需要自行调参 */
private static HttpClient httpClient = HttpClient4Utils.createHttpClient(100, 20, 10000, 2000, 2000);
/**
*
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
Map<String, String> params = new HashMap<String, String>();
// 1.设置公共参数
params.put("secretId", SECRETID);
params.put("businessId", BUSINESSID);
params.put("version", "v2");
params.put("timestamp", String.valueOf(System.currentTimeMillis()));
params.put("nonce", String.valueOf(new Random().nextInt()));
// 2.设置私有参数
JsonArray jsonArray = new JsonArray();
JsonObject feedback1 = new JsonObject();
feedback1.addProperty("taskId", "4f8e1df136904ab5a4408f8759cde946");
feedback1.addProperty("level", 0);
feedback1.addProperty("label", 100);
jsonArray.add(feedback1);
JsonObject feedback2 = new JsonObject();
feedback2.addProperty("taskId", "3efc1ca004164caabe80ca24e02eeb29");
feedback2.addProperty("level", 2);
feedback2.addProperty("label", 200);
jsonArray.add(feedback2);
params.put("feedbacks", jsonArray.toString());
// 3.生成签名信息
String signature = SignatureUtils.genSignature(SECRETKEY, params);
params.put("signature", signature);
// 4.发送HTTP请求,这里使用的是HttpClient工具包,产品可自行选择自己熟悉的工具包发送请求
String response = HttpClient4Utils.sendPost(httpClient, API_URL, params, Consts.UTF_8);
// 5.解析接口返回值
JsonObject resultObject = new JsonParser().parse(response).getAsJsonObject();
int code = resultObject.get("code").getAsInt();
String msg = resultObject.get("msg").getAsString();
if (code == 200) {
JsonArray resultArray = resultObject.getAsJsonArray("result");
for (JsonElement jsonElement : resultArray){
JsonObject jObject = jsonElement.getAsJsonObject();
String taskId = jObject.get("taskId").getAsString();
int result = jObject.get("result").getAsInt();
System.out.println(String.format("taskId=%s,result=%s",taskId,result));
}
}
}
}
响应示例
输出结果:
{
"code":200,
"msg":"ok",
"result":[
{
"taskId":"4f8e1df136904ab5a4408f8759cde946",
"result":2
},
{
"taskId":"3efc1ca004164caabe80ca24e02eeb29",
"result":0
}
]
}