地址:https://open.cnipr.com/cnipr-api/rs/api/analysis/as2/{client_id}
HTTP POST
参数名称 | 参数说明 | 是否必填 | 参数类型 |
---|---|---|---|
client_id | 应用id,如没有clientId请先接入应用,查看接入流程获取 | true | String |
openid | 用户id,可通过 Implicit Grant 方式 或 Authorization Code 方式 等两种方式获取openid | true | String |
access_token | 访问令牌,可通过
Implicit Grant 方式 或
Authorization Code 方式或
Refresh Token 方式
等三种方式获取access_token |
true | String |
exp | 表达式,例:公开(公告)号='CN101770823B' 表达式编写请查看检索帮助文档 |
true | String |
senior | 高级检索表达式 | false | String |
dbs | 数据库,多值用数组或使用英文逗号分隔,例:FMZL,FMSQ,WGZL,SYXX 常用检索数据库 | true | String[] |
option | 检索类型,默认值:2 (按字检索)其它值含义见附录 | false | int |
from | 检索起始位,from:0:表示从第一条开始取,不能为负数,默认为0 | false | int |
size | 统计结果集,上限为10000,默认为10 | false | int |
option | 检索类型,默认值:2 (按字检索)其它值含义见附录 | false | int |
analysisList | 分析字段,支持多字段. 参数请查看简单分析字段 | true | List<String> |
public class SearchClientTest { String client_id = "CLIENT_ID"; String openid = "OPENID"; String access_token = "ACCESS_TOKEN"; /** * 一维多字段分析接口 */ @Test public void expSerachTest() throws Exception { String url = "/rs/api/analysis/as2/"+client_id; List<NameValuePair> nvps = new ArrayList<NameValuePair>(); // 提交参数及值 nvps.add(new BasicNameValuePair("openid", openid)); nvps.add(new BasicNameValuePair("access_token", access_token)); nvps.add(new BasicNameValuePair("exp", "名称=(发动机)")); nvps.add(new BasicNameValuePair("dbs", "FMZL"));//构造访问库的Set nvps.add(new BasicNameValuePair("dbs", "SYXX")); nvps.add(new BasicNameValuePair("from", "0")); //from:0,表示从第1条开始取,不能为负数 nvps.add(new BasicNameValuePair("size", "10")); //size:10,表示取10条,上限为100条,不能为负数 nvps.add(new BasicNameValuePair("option", "2")); nvps.add(new BasicNameValuePair("analysisList", "inventorName"));//发明人字段 nvps.add(new BasicNameValuePair("analysisList", "appDateYear")); //申请年字段 this.POST(url, nvps); } public void POST(String url, List<NameValuePair> nvps) throws Exception { DefaultHttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost(url); httppost.setHeader("ContentType", "application/x-www-form-urlencoded"); // 设置表单提交编码为UTF-8 UrlEncodedFormEntity entry = new UrlEncodedFormEntity(nvps, "UTF-8"); entry.setContentType("application/x-www-form-urlencoded;charset=UTF-8"); httppost.setEntity(entry); HttpResponse response = httpclient.execute(httppost); HttpEntity entity = response.getEntity(); String ss = EntityUtils.toString(entity, "UTF-8"); //打印返回结果 System.out.println(ss); EntityUtils.consume(entity); httpclient.getConnectionManager().shutdown(); } }
属性名称 | 属性说明 | 属性类型 |
---|---|---|
status | 状态码,0代表成功,其它值含义见附录 | long |
message | 响应的信息描述 | String |
total | 命中总数 | long |
results | 分析结果集 | List<AnalysisBean> |
AnalysisBean
属性名称 | 属性说明 | 属性类型 |
---|---|---|
analysisTotal | 分析总条数 | int |
analysisCol | 分析字段名(英文) | string |
analysisName | 分析字段名(中文) | string |
analysisFrom | 分析取值起始游标值 | int |
analysisSize | 分析取值数量 | int |
list | 分析详细 | List<KeyValueBean> |
KeyValueBean
属性名称 | 属性说明 | 属性类型 |
---|---|---|
key | 值 | string |
value | 数量 | int |