企业微信开发采坑——会话存档sdk

本文总结了在对接企业微信会话存档接口时遇到的问题,重点讨论了SDK在不同操作系统下的使用限制,如Windows和Linux环境下DLL与SO文件的放置位置,并提供了在Linux中自定义路径加载SDK的代码示例,帮助开发者解决mac环境不支持及初始化配置等问题。
摘要由CSDN通过智能技术生成

由于这几天项目要对接企业微信会话内容存档相关接口,把这几天遇到的问题总结一下。

简单来说就是企业微信聊天内容的数据同步,此篇主要记录对接sdk的问题。

        首先要明确的是,会话存档的相关接口使用的是企业微信已经封装提供好的sdk包,并不是对接http接口。

那么sdk包这里要注意的内容主要有两点(官方提供的sdk包中有demo,可以先简单看一下跑跑试试):

        1.企业微信提供的sdk目前只有windows和linux,目前还不支持mac,所以在mac开发调试不是很方便。

        2.初始化sdk包所在的位置。so应该放在什么位置?从官方的建议来看:

        Q:so放置在什么地方?
        A:建议将so放置在系统路径:LD_LIBRARY_PATH指定的路径内,或者将so所在的目录加入到LD_LIBRARY_PATH的路径范围内。

windows下开发使用的是dll包,linux下放置的是so包,名称是有所不同的。

windows放置的目录位置:C:\Windows\System32\WeWorkFinanceSdk.dll

linux放置的目录位置:/usr/lib/libWeWorkFinanceSdk_Java.so

 

在服务器上放置的位置可以默认放在/usr/lib目录下,但是为了便于管理,有时候需自定义目录位置,贴一下初始化加载sdk的代码

1.yml中配置自定义加载的路径

 

2.在官方给的Finance类中,改一下静态代码块的内容,

static {
        System.out.println("企业微信类库加载路径:"+SyncSessionUtil.SESSION_LIB_URL);
        System.load(SyncSessionUtil.SESSION_LIB_URL);
        //System.load("C:\\Windows\\System32\\WeWorkFinanceSdk.dll");
        //System.loadLibrary("WeWorkFinanceSdk_Java");
    }

3.初始化SESSION_LIB_URL路径,由于Finance中是在static中初始化sdk包的,所以我们这里要引用static常量,要把yml中对应值set到常量中去

@Data
@Component
public class SyncSessionUtil {

    /**
     * 企业微信dll,so类库加载路径
     * dll:window本地测试路径
     * so:linux服务器调用路径
     */
    public static String SESSION_LIB_URL;

    @Value("${session.lib.url}")
    public void setSessionLibUrl(String url){
        SESSION_LIB_URL = url;
    }

    /**
     * 解析会话存档秘钥
     */
    @Value("${session.privateKey}")
    private String privateKey;
}

最后在跑一下demo,初始化成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值