微信jssdk扫码报错:{"realAuthUrl":[""],"errMsg":"config:invalid url domain"}

微信公众号 文章 2023-04-19 11:06 1046 0 全屏看文

AI助手支持GPT4.0

好久不搞扫码了。今天上手就报错:

微信jssdk扫码报错:{"realAuthUrl":["http://192.168.79.169/gaijia"],"errMsg":"config:invalid url domain"}

这个错误提示表明你在配置微信JS-SDK时,使用了一个不合法的URL域名。


根据微信官方文档,为了确保安全性,微信JS-SDK只允许使用白名单中的URL地址。当用户发起分享、扫码等操作时,会检查当前页面的URL是否在白名单中。如果不在白名单中,则会提示"config:invalid url domain"错误。


解决这个问题的方法是,在微信公众平台后台的"开发->基本配置"中,将需要使用JS-SDK的URL地址添加到"JS接口安全域名"列表中。另外,还需要在HTML页面中正确设置appId和timestamp等参数,以确保签名的正确性。

换成白名单域名后不报错了。

image.png

以下是一个示例代码:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>微信JS-SDK示例</title>
    <script src="http://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script>
    <script>
        wx.config({
            debug: false,
            appId: '你的AppID',
            timestamp: <?php echo $timestamp; ?>,
            nonceStr: '<?php echo $nonceStr; ?>',
            signature: '<?php echo $signature; ?>',
            jsApiList: [
                'scanQRCode'
            ]
        });
    </script>
</head>
<body>
    <button onclick="wx.scanQRCode()">扫一扫</button>
</body>
</html>

上面的代码中,使用wx.config()方法配置JS-SDK,其中debug属性表示是否开启调试模式,appId属性表示你的公众号AppID,timestamp、nonceStr和signature属性分别表示签名所需的时间戳、随机字符串和签名值,这些参数可以在服务器端生成。最后,在jsApiList属性中指定需要使用的API接口(例如scanQRCode)。

-EOF-

AI助手支持GPT4.0