【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文档

预览拼接地址

相关推荐
DevOpenClub9 分钟前
PDF 转 HTML API 数据接口
pdf
Better Bench37 分钟前
如何将Latex的文章内容快速用word+Endnote排版
word·latex
是Yu欸38 分钟前
【Word】一键批量引用论文上标——将正文字体改为上标格式
word
Morantkk41 分钟前
Word和Excel使用有感
word·excel
zhy8103024 小时前
.net6 使用 FreeSpire.XLS 实现 excel 转 pdf - docker 部署
pdf·.net·excel
慧都小妮子5 小时前
Spire.PDF for .NET【页面设置】演示:打开 PDF 时自动显示书签或缩略图
java·pdf·.net
join88 小时前
解决vue-pdf的签章不显示问题
javascript·vue.js·pdf
小行星1258 小时前
前端把dom页面转为pdf文件下载和弹窗预览
前端·javascript·vue.js·pdf
万里沧海寄云帆20 小时前
Word 插入分节符页码更新问题
windows·microsoft·word
穆友航1 天前
PDF内容提取,MinerU使用
数据分析·pdf