微信分享网页不显示缩略图和描述怎么办?

微信在分享第三方网站是不显示缩略图和描述的,如下图所示

要解决这个问题必须调用微信JS-SDK接口,下面讲一下如何调用接口

第一部分 准备步骤

注册微信公众号。

通过左侧导航“开发”--“基本配置”进入。通过开发者ID及密码调用获取access_token接口时,需要设置访问来源IP为白名单。可将服务器ip、开发机ip、测试机ip都进行设置。

配置JS接口安全域名。

通过左侧导航“设置”--“公众号设置”--“功能设置”进入。设置JS接口安全域名后,公众号开发者才可在该域名下调用微信开放的JS接口。具体设置步骤如下图所示。

通过公众号里的AppID和AppSecret获取access_token(接口调用凭据),并进行缓存(有效期为2小时)

公众平台以access_token为接口调用凭据,来调用接口,所有接口的调用需要先获取access_token,access_token在2小时内有效,过期需要重新获取,但1天内获取次数有限,开发者需自行存储,详见获取接口调用凭据(access_token)文档

public static string GetAccess_token()
{
    string access_token = string.Empty;
    //从缓存获取
    string cacheName = "Weixin_access_token";
    object obj = CacheHelper.GetCache(cacheName);
    if (obj != null)
    {
        access_token = obj.ToString();
    }
    //从接口获取
    else
    {
        string url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + AppID + "&secret=" + AppSecret;
        access_token = SubmitHttpWebRequest(url, "access_token");
        //设置缓存
        //7200秒内有效,不可无限次调取微信接口
        CacheHelper.SetCache(cacheName, access_token, 7200);
    }
    return access_token;
}

获取jsapi_ticket,并进行缓存(有效期为2小时)。jsapi_ticket是公众号用于调用微信JS接口的临时票据

public static string GetJsapi_Ticket()
{
    string jsapi_ticket = string.Empty;
    //从缓存获取
    string cacheName = "Weixin_jsapi_ticket";
    object obj = CacheHelper.GetCache(cacheName);
    if (obj != null)
    {
        jsapi_ticket = obj.ToString();
    }
    //从接口获取
    else
    {
        string access_token = GetAccess_token();
        string url = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?type=jsapi&access_token=" + access_token;
        jsapi_ticket = SubmitHttpWebRequest(url, "ticket");
        //设置缓存
        //7200秒内有效,不可无限次调取微信接口
        CacheHelper.SetCache(cacheName, jsapi_ticket, 7200);
    }
    return jsapi_ticket;
}

完整代码下载

https://github.com/coolxiaoyi/WeixinShare-JSSDK

猜你喜欢

转载自blog.csdn.net/yuanlong12178/article/details/107935030