企业微信应用开发(JS-SDK网页式开发)第三集:获取用户身份、预览附件

一、获取访问用户身份

该接口用于根据code获取成员信息

/**
	    进入应用时,用户会携带一个随机code,5分钟未被使用自动过期
	    code会被加载进地址栏,需要获取当前地址栏进行截取
**/
export async function getuserinfo ( obj ) {
	await axios.get('https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo',
		    {
		        params: {
		            access_token: obj.access_token,
					code: getQueryString('code'), 
		        }
		    }
		)
		.then((res) => {
			console.log('用户信息', res)
		    obj.userId = ress.data.UserId
		})
		.catch((err) => {
		    console.log(err)
		})
}


	// 获取浏览器地址栏某个参数的值。
		getQueryString (name)  {
		    const reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');
		    const search = window.location.search.split('?')[1] || '';
		    const r = search.match(reg) || [];
		    return r[2];
		}

二、预览文件

报错1:wx.previewFile is not a function
首先::::查看当前 J S 版本,百度打开链接搜索 previewFile 看是否有这个方法,
~ ~ ~ ~ 如果没有!!!!!!

  1. 更改1.0.0版本,发现1.0.0版本有这个方法
  2. 或者不更改版本,使用下边方法试试
wx.invoke("previewFile",{
	url: pdfURL, // 需要预览文件的地址(必填,可以使用相对路径)
	name: '',
	size: 126552
}

报错2:企业微信 ios 手机 提示:下载失败,请检查网络后重试
在这里插入图片描述
解决方法:
ios手机 预览文件时:将size:设置为 0 !!!!!!!!!
安卓手机必须是准确的size

export async function previewFile (urls) {
	wx.ready((res) => {
		var u = navigator.userAgent
		wx.previewFile({
		    url: urls, // 需要预览文件的地址(必填,可以使用相对路径)
		    name: '', // 需要预览文件的文件名,必须有带文件格式的后缀,例如.doc(不填的话取url的最后部分,最后部分是个包含格式后缀的文件名)
		    // ios手机size必须是0,安卓机必须有大小
			size: u.indexOf('iPhone') > -1 ? 0 : 40698, // 需要预览文件的字节大小(必填,而且大小必须正确,否则会打开失败)ios size为0才能使用
			success: function(res22) {
				console.log('以键值对的形式返回,可用的api值true,不可用为false', res22)
			},
			fail: function(res33) {
				console.log('falsefalsefalsefalsefalsefalse', res33)
			},
			complete:  function(res44) {
				console.log('completecompletecompletecomplete', res44)
				uni.hideLoading()
			},
		});
	});
}

报错3:安卓手机使用wx.previewFile 时,会弹出 “ 选择使用什么方式 ” 打开文件, 选择一个方式后,如果点击“总是”, 再返回企业微信的时候会出现一个白屏页面,需要再点击一次返回按键才会回到 该应用项目;

解决方法:

  1. 下载一个QQ浏览器,当安卓手机预览文件时,不会弹出 “ 选择使用什么方式 ” 框,直接打开文件,效果和IOS手机一样;
  2. 每次 弹出 “ 选择使用什么方式 ” 时,点击 仅此一次,当然会麻烦很多;
  3. 待考察、、、、

肯定还有其他方法,但是小编我还没找到解决的方法,如果大佬们有幸刷到本条作品 欢迎在下方留言以及私信交流
在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值