1. 文件服务

1.1. 方法列表

名称 说明
downloadService 文件下载服务。
uploadService 文件上传服务。

1.2. 文件下载服务

外部系统通过下载接口,可以把系统的文件或附件以二进制流的形式输出到HTTP响应。

名称

downloadService

请求路径:/seeyon/services/downloadService

参数:

参数 数据类型 说明
token string 登录验证后获取的身份令牌。
fileId string 系统中附件ID

返回值:文件的二进制流

成功则返回输出流,否则返回提示出错字符

StringBuffer parameters = new StringBuffer(); 
    parameters.append("fileId="+"-4951942983085243789");
    parameters.append("&token="+"e821246a-3b2f-4c28-94ab-9410cc19c056");
    URL preUrl = null;
    URLConnection uc = null;
    try {
        preUrl = new URL("http://128.2.3.174/seeyon/services/downloadService");
        String s = parameters.toString();
        uc = preUrl.openConnection();
        uc.setDoOutput(true);
        uc.setUseCaches(false);
        uc.setRequestProperty("Content-Type",
            "application/x-www-form-urlencoded");
        HttpURLConnection hc = (HttpURLConnection) uc;
        hc.setRequestMethod("POST");
        OutputStream os = hc.getOutputStream();
        DataOutputStream dos = new DataOutputStream(os);
        dos.writeBytes(s);
        dos.flush();
        dos.close();
        FileOutputStream file = new FileOutputStream("d:/test.pdf");
        InputStream is = hc.getInputStream();
        int ch;
        while ((ch = is.read()) != -1) {
            file.write(ch);
        }
        if (is != null) is.close();

1.3. 文件上传服务

外部系统通过调用上传接口,可以把外部系统需要上传到的附件先通过此接口完成,如外边系统发起表单流程,需要先调用此接口。

名称

uploadService 文件上传服务。

请求路径:/seeyon/uploadService.do?method= processUploadService

参数:

参数 数据类型 说明
token string 登录验证后获取的身份令牌。
senderLoginName string 发起者登录名

返回值:string

成功则返回生成的附件id,如果多个文件上传则以"|"符号分割返回

示例:

URL preUrl = null;
      URLConnection uc = null;
      preUrl = new URL("http://128.2.3.174/seeyon/uploadService.do?
      method = processUploadService"
          +"&senderLoginName="+"zy"
          +"&token="+"997a7cdc-2399-47e8-991e-96c859cccc7f");
      String s = parameters.toString();
      uc = preUrl.openConnection();
      HttpURLConnection hc = (HttpURLConnection) uc;
      hc.setDoOutput(true);
      hc.setUseCaches(false);
      hc.setRequestProperty("contentType", "charset=utf-8");
      hc.setRequestMethod("POST");
      BufferedInputStream  input=new BufferedInputStream(new FileInputStream("c:/LDAP集成设计文档.doc"));
      String BOUNDARY = "---------------------------7d4a6d158c9"; // 分隔符
      String fileName="LDAP集成设计文档.doc";
      StringBuffer sb = new StringBuffer();
      sb.append("--");
      sb.append(BOUNDARY);
      sb.append("
");
      sb.append("Content-Disposition: form-data; 
 name="1"; filename=""+fileName+""
");
      sb.append("Content-Type: application/msword

");

      hc.setRequestProperty("Content-Type",
          "multipart/form-data;boundary=" + "---------------------------7d4a6d158c9");
      byte[] end_data = ("
--" + BOUNDARY + "--
").getBytes();
      DataOutputStream dos = new DataOutputStream(hc.getOutputStream());
      dos.write(sb.toString().getBytes("utf-8"));
      int cc=0;
      while((cc=input.read())!=-1)
      {
          dos.write(cc);
      }
      dos.write(end_data);
      dos.flush();
      dos.close();
      FileOutputStream file = new FileOutputStream("c:/test.txt");
      InputStream is = hc.getInputStream();
      int ch;
      while ((ch = is.read()) != -1) {
           file.write(ch);
      }
      if (is != null)
      is.close();

上传下载本地调用:

import com.seeyon.oainterface.impl.exportdata.FileDownloadExporter
     FileDownloadExporter exporter=new FileDownloadExporter();
     exporter.processDownload(token, fileId, out);

     import com.seeyon.oainterface.impl.exportdata.FileUploadExporter;
     FileUploadExporter  fileUpload=new FileUploadExporter();
     String outStr= fileUpload.processUpload(request);

results matching ""

    No results matching ""