async wxConfig() {
const url = location.href.split("#")[0]
const signatureInfo = await getSignatureAPI(url)
alert('当前页面 URL:' + url)
alert('返回签名' + JSON.stringify(signatureInfo.data))
console.log('当前页面 URL:', url)
console.log('signatureInfo',signatureInfo)
ww.register({
corpId: corpId,
agentId: agentId,
jsApiList: ["getCurExternalContact", "getCurExternalChat", "sendChatMessage"],
getConfigSignature,
getAgentConfigSignature,
onConfigComplete: (res) => {
alert("onConfigComplete:" + JSON.stringify(res))
console.log('onConfigComplete', res)
},
onConfigSuccess: (res) => {
alert("onConfigSuccess:" + JSON.stringify(res))
console.log('onConfigSuccess', res)
},
onConfigFail: (res) => {
alert("onConfigFail:" + JSON.stringify(res))
console.log('onConfigFail', res)
},
onAgentConfigComplete: (res) => {
alert("onAgentConfigComplete:" + JSON.stringify(res))
console.log('onAgentConfigComplete', res)
},
onAgentConfigSuccess: (res) => {
alert("onAgentConfigSuccess:" + JSON.stringify(res))
console.log('oncurrentUrl AgentConfigSuccess', res)
},
onAgentConfigFail: (e) => {
alert("onAgentConfigFail:" + JSON.stringify(res))
console.log('onAgentConfigFail', res)
}
})
async function getConfigSignature (url) {
alert('企业签名执行了 ' + url)
alert('企业签名' + JSON.stringify(signatureInfo.data.corpTicketSignature))
// 根据 url 生成企业签名
// 生成方法参考 https://developer.work.weixin.qq.com/document/14924
return {
timestamp: Number(signatureInfo.data.corpTicketSignature.timestamp),
nonceStr: signatureInfo.data.corpTicketSignature.noncestr,
signature: signatureInfo.data.corpTicketSignature.signature
}
}
async function getAgentConfigSignature(url) {
alert('应用签名执行了 ' + url)
alert('应用签名' + JSON.stringify(signatureInfo.data.agentTicketSignature))
// 根据 url 生成应用签名,生成方法同上,但需要使用应用的 jsapi_ticket
return {
timestamp: Number(signatureInfo.data.agentTicketSignature.timestamp),
nonceStr: signatureInfo.data.agentTicketSignature.noncestr,
signature: signatureInfo.data.agentTicketSignature.signature,
}
}
},
