企业微信jssdk使用

按客户需求做一个企业微信的h5,需要用到企业微信的jssdk,以下是使用企业微信jssdk的步骤

pubilc文件夹下的index.html中引入js

/*企业微信的引用是jWeixin,后续补不要搞错了,微信的是wx*/
<script type="text/javascript" src="//res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>

封装一个index.js

export const initsdk = (options) => {
    return new Promise((resolve, reject) => {
        uni.request({
            url: 'http://xxxxxxx',// 请求后端返回的签名参数的接口地址
            method: 'GET', // 请求方式
            data: {}, // 请求参数
            success: (res) => {
                let WXConfig = res.data.data // 接受后端返回的签名参数
                jweixin.config({
                    beta: true,
                    debug: false,
                    appId: WXConfig.appId, // 必填,企业微信的corpID
                    timestamp: WXConfig.timestamp, // 必填,生成签名的时间戳
                    nonceStr: WXConfig.nonceStr, // 必填,生成签名的随机串
                    signature: WXConfig.signature, // 必填,签名串
                    jsApiList:[
                        'hideOptionMenu',
                        'showOptionMenu']  // 你需要使用的方法,要现在这里引入
                })
                jweixin.ready(function() {
                    // 请求成功会进来这里 在这里写你的操作
                    if (options.show) {
                        jweixin.showOptionMenu() // 使用方法
                    } else {
                        jweixin.hideOptionMenu()
                    }
                })
                jweixin.error(function(err) {
                // 报错了就根据 错误码 去官方找问题
                // https://developer.work.weixin.qq.com/document/path/92455
                    uni.showToast({
                        title: err || '请求jssdk中config错误'
                    })
                })
            },
            fail: (err) => {
                console.log(err)
            }
        })
    })
}

在需要使用方法的界面引入

// 引入方法
import { initsdk } from '@/common/index.js'

// 在需要的地方调用
initsdk({})

部分方法

1.企业微信转发:

onMenuShareAppMessage(title,desc,link,imgUrl)

title, // 分享标题

desc, // 分享描述

link, // 分享链接

imgUrl, // 分享图标

2.分享给微信好友

onMenuShareWechat(title,desc,link,imgUrl)

title, // 分享标题

desc, // 分享描述

link, // 分享链接

imgUrl, // 分享图标

3.分享到朋友圈

onMenuShareTimeline(title,link,imgUrl)

title, // 分享标题

link, // 分享链接

imgUrl, // 分享图标

4.拍照或从手机相册选图

chooseImage ()

5.上传图片接口

uploadImage (localId)

localId,需要上传的图片的本地ID,由chooseImage接口获得

6.下载图片接口

downloadImage(serverId)

serverId,需要下载的图片的服务器端ID,由uploadImage接口获得

7.获取地理位置接口

getLocation (type)

type // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'

8.打开持续定位接口

startAutoLBS (type)

type // wgs84是gps坐标,gcj02是火星坐标

9.监听地理位置变化接口

onLocationChange()

10.隐藏右上角全部按钮

hideAll()

11.显示右上角全部按钮

showAll()

12.批量隐藏右上角按钮

hideMenuItems(arr)

例如 :arr=["menuItem:share:wechat","menuItem:share:timeline]

多个用逗号隔开

13.批量显示右上角按钮

showMenuItems(arr)

例如 :arr=["menuItem:share:wechat","menuItem:share:timeline]

多个用逗号隔开

// 上面的方法没用的个话可以去翻翻文档,文档经常都在更新,没用可能是被淘汰了写成其他名字了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个完整的示例,包括如何引入企业微信 JSSDK 和如何创建外部群。 首先,我们需要在企业微信后台中创建一个应用,并获取到应用的 `corpId` 和 `agentId`。然后在前端页面中引入 JSSDK: ```html <script src="https://qydev.weixin.qq.com/sdk/js/qywx.js"></script> ``` 接下来,我们需要初始化 JSSDK,代码如下: ```javascript wx.config({ beta: true, debug: true, appId: 'YOUR_APP_ID', timestamp: new Date().getTime(), nonceStr: Math.random().toString(36).substr(2), signature: 'YOUR_SIGNATURE', jsApiList: [ 'on', 'ready', 'invoke', 'selectExternalContact' ] }); ``` 注意,需要替换 `appId` 和 `signature` 为实际的值。其中 `signature` 是通过后端接口获取的,用于验证身份和权限。 接下来,我们需要监听 JSSDK 的 `ready` 事件,代码如下: ```javascript wx.ready(function () { console.log('JSSDK is ready'); }); ``` 在 JSSDK 准备好之后,我们就可以使用 JSSDK 提供的 API 来创建外部群了。首先,我们需要通过 `selectExternalContact` API 来选择外部联系人,代码如下: ```javascript wx.invoke('selectExternalContact', { filterType: 0, selectMode: 0, selectedExternalUserIds: [] }, function (res) { if (res.err_msg === 'selectExternalContact:ok') { console.log('Selected external contact:', res); var externalUserId = res.selectedExternalUserIds[0]; createChat(externalUserId); } else { console.error('Failed to select external contact:', res); } }); ``` 其中,`filterType` 表示过滤类型,0 表示不过滤;`selectMode` 表示选择模式,0 表示单选;`selectedExternalUserIds` 表示已选的外部联系人 ID,这里我们设置为空数组。 当选择外部联系人成功之后,我们就可以调用 `createChat` 方法来创建外部群了,代码如下: ```javascript function createChat(externalUserId) { wx.invoke('createChat', { name: 'External Chat', userIds: [], externalUserIds: [externalUserId] }, function (res) { if (res.err_msg === 'createChat:ok') { console.log('Created external chat:', res); } else { console.error('Failed to create external chat:', res); } }); } ``` 其中,`name` 表示群聊名称,`userIds` 表示企业成员的 ID(这里设置为空数组),`externalUserIds` 表示外部联系人的 ID。 至此,我们已经完成了通过 JSSDK 创建外部群的示例。完整代码如下: ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>External Chat Example</title> </head> <body> <h1>External Chat Example</h1> <button id="create-chat-btn">Create External Chat</button> <script src="https://qydev.weixin.qq.com/sdk/js/qywx.js"></script> <script> wx.config({ beta: true, debug: true, appId: 'YOUR_APP_ID', timestamp: new Date().getTime(), nonceStr: Math.random().toString(36).substr(2), signature: 'YOUR_SIGNATURE', jsApiList: [ 'on', 'ready', 'invoke', 'selectExternalContact', 'createChat' ] }); wx.ready(function () { console.log('JSSDK is ready'); }); document.getElementById('create-chat-btn').addEventListener('click', function () { wx.invoke('selectExternalContact', { filterType: 0, selectMode: 0, selectedExternalUserIds: [] }, function (res) { if (res.err_msg === 'selectExternalContact:ok') { console.log('Selected external contact:', res); var externalUserId = res.selectedExternalUserIds[0]; createChat(externalUserId); } else { console.error('Failed to select external contact:', res); } }); }); function createChat(externalUserId) { wx.invoke('createChat', { name: 'External Chat', userIds: [], externalUserIds: [externalUserId] }, function (res) { if (res.err_msg === 'createChat:ok') { console.log('Created external chat:', res); } else { console.error('Failed to create external chat:', res); } }); } </script> </body> </html> ``` 希望这个示例可以帮助你理解如何使用企业微信 JSSDK 来创建外部群。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值