小程序代码:
<web-view id="myWebview" src="{{finalUrl}}" bindmessage="onWebViewMessage" binderror="onWebViewError" bindload="onWebViewLoad">
</web-view>
finalUrl="https://xxxx.xxx.xxx:34010/systemApp"
getLogin() {
console.log("获取登录code");
// 登录
wx.login({
success: res => {
console.log("获取到登录code:", res.code);
if (res.code) {
this.setData({
loginCode: res.code
});
finalUrl =this.finalUrl+ `?code=${encodeURIComponent(code)}`;
this.setData({
finalUrl: finalUrl,
});
}
},
fail: err => {
console.error('登录失败:', err);
}
})
},
uniAPP代码:
export const getCode = async () => {
console.log("进来了getCode")
let currentUrl = window.location.href;
let decodedUrl = decodeURIComponent(currentUrl);
console.log("decodedUrl===" + decodedUrl);
let url = new URL(decodedUrl);
let code = url.searchParams.get("code");
console.log("code===" + code);
getSignature();
if (code) {
getHttpOpenid(code)
} else {
storage.set("openid", '');
}
}
const getHttpOpenid = async (code: string) => {
const result: any = await openid(code);
if (result.code === 200) {
console.log("+++++++++++++++")
storage.set("openid", result.data.openid);
} else {
storage.set("openid", '');
}
}
const getSignature = async () => {
const pageUrl = window.location.origin;
console.log("pageUrl===" + pageUrl);
const result: any = await signature(pageUrl);
if (result.code === 200) {
console.log("+++++++++++++++")
getWXConfig(result.data);
} else {
storage.set("wxSDK", "");
}
}
const getWXConfig = async (data: any) => {
wx.config({
debug: true,
appId: data.appId, // 必填,公众号的唯一标识
timestamp: data.timestamp, // 必填,生成签名的时间戳
nonceStr: data.nonceStr, // 必填,生成签名的随机串
signature: data.signature, // 必填,签名
jsApiList: ["getLocation"], // 必填,需要使用的JS接口列表
});
wx.ready(() => {
// wx API 调用
console.log("wx SDK 初始化成功");
storage.set("wxSDK", "1");
});
wx.error((res) => {
console.log("wx SDK 初始化失败:", res);
storage.set("wxSDK", "");
});
};
JS接口安全域名可以填https://xxxx.xxx.xxx吗

你在index.html 注入sdk代码,初始化一下需要的功能就可以了,具体问题是什么
jssdk 不支持uniapp开发