【ow365】java对接使用第三方ow365预览pdf,word等office文档

ow365官网

文档在线预览 OfficeWeb365 速度更快的Office在线预览服务提供office在线预览及PDF在线预览服务,支持Word文档在线预览、Excel在线预览、PowerPoint在线预览、WPS等Office文件在线预览,支持所有浏览器及移动设备Mobile预览,无需安装ActiveX控件,无需客户端部署即可实现办公文档在线预览。https://officeweb365.com/

Java示例代码

java 复制代码
package com.htaiyun.utils;
import org.apache.commons.codec.binary.Base64;
import javax.crypto.Cipher;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.DESKeySpec;
import javax.crypto.spec.IvParameterSpec;
import java.security.Key;
import java.security.spec.AlgorithmParameterSpec;

public class DESEncrypt {
    private static final byte[] DESkey = "12345678".getBytes();// 设置密钥,略去
    private static final byte[] DESIV = "87654321".getBytes() ;// 设置向量,略去
    //加密算法的参数接口,IvParameterSpec是它的一个实现
    static AlgorithmParameterSpec iv = null;
    private static Key key = null;

    public DESEncrypt() throws Exception {
        this(DESkey,DESIV);
    }

    public DESEncrypt(String DESkey,String DESIV) throws Exception {
        this(DESkey.getBytes(),DESIV.getBytes());
    }

    private DESEncrypt(byte[] DESkey,byte[] DESIV) throws Exception {
        // 设置密钥参数
        DESKeySpec keySpec = new DESKeySpec(DESkey);
        // 设置向量
        iv = new IvParameterSpec(DESIV);
        // 获得密钥工厂
        SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
        key = keyFactory.generateSecret(keySpec);// 得到密钥对象
    }
    /**
     * @param data
     * @return
     * @throws 加密
     */
    public  String encode(String data) throws Exception {
        // 得到加密对象Cipher
        Cipher enCipher = Cipher.getInstance("DES/CBC/PKCS5Padding");
        // 设置工作模式为加密模式,给出密钥和向量
        enCipher.init(Cipher.ENCRYPT_MODE, key, iv);
        byte[] pasByte = enCipher.doFinal(data.getBytes("utf-8"));
        return Base64.encodeBase64String(pasByte).replaceAll("\\+", "_").replaceAll("\\/", "*").replaceAll("\\=", "-");
    }
    /**
     * @param data
     * @return
     * @throws 解密
     */
    public  String decode(String data) throws Exception {
        Cipher deCipher = Cipher.getInstance("DES/CBC/PKCS5Padding");
        deCipher.init(Cipher.DECRYPT_MODE, key, iv);
        byte[] pasByte = deCipher.doFinal(Base64.decodeBase64(data.replaceAll("_", "+").replaceAll("*", "/").replaceAll("-", "=")));
        return new String(pasByte, "UTF-8");
    }

    public static void main(String[] args) throws Exception {
        DESEncrypt tools = new DESEncrypt();
        System.out.println("加密:" + tools.encode("http://192.168.1.2/a.doc"));
        System.out.println("解密:" + tools.decode(tools.encode("http://192.168.1.2/a.doc ")));
    }
}

添加绑定域名

获取密钥对和向量

开启文件地址加密

帮助文档和Java示例方法

帮助 OfficeWeb365 速度更快的Office在线预览服务

下载Java文档

预览拼接地址

相关推荐
小奥超人10 小时前
PDF无法打印!怎么办?
windows·经验分享·pdf·办公技巧·pdf加密解密
旭东怪15 小时前
EasyPoi 使用$fe:模板语法生成Word动态行
java·前端·word
m0_748241231 天前
ElasticPDF-新国产 PDF 编辑器开发框架(基于 pdf.js Web PDF批注开发,实现高亮多边形橡皮擦历史记录保存注释文字)
前端·pdf·编辑器
ComPDFKit1 天前
开源 JS PDF 库比较
pdf
杨浦老苏1 天前
开源PDF翻译工具PDFMathTranslate
人工智能·docker·ai·pdf·群晖·翻译
LostSpeed1 天前
在福昕(pdf)阅读器中导航到上次阅读页面的方法
pdf
旭久1 天前
SpringBoot的Thymeleaf做一个可自定义合并td的pdf表格
pdf·html·springboot
雕刻刀2 天前
Latex 转换为 Word(使用GrindEQ )(英文转中文,毕业论文)
word
觅远2 天前
python实现word转html
python·html·word