用户登录 openid(微信小程序无师自通三)

这篇具有很好参考价值的文章主要介绍了用户登录 openid(微信小程序无师自通三)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

每一个微信小程序对应每一个用户都有一个固定的ID,这个ID就是openid。 博主想把“小汽车保养里程碑单机版”搬上微信小程序,第一件事情应该就是在小程序中能够识别不同的用户,每个用户自己保存自己的数据,需要一个唯一的识别号,就是这个openid。

先看看小程序官方的说明:

第一步、调用 wx.login() 获取 临时登录凭证code ,并回传到开发者服务器。
第二步、调用 auth.code2Session 接口,换取 用户唯一标识 OpenID 。

微信小程序openid的使用,微信小程序无师自通,微信小程序,小程序,微信

博主第一次接触这些功能,感觉有点复杂呢,不过用了一天时间,也还是搞定了获取openid。首先在小程序中弄一个按钮:

微信小程序openid的使用,微信小程序无师自通,微信小程序,小程序,微信

 ts中定义点击按钮,第一步访问微信的服务器获得一个code。

user_login: function () { 
        wx.login({
          success: (res0) => 
          {
            console.log(res0);
           // let code = res.code
            let that = this
                      wx.request
                      ({
                        url: 'https://w1914z4829.zicp.fun/user_code',
                        method: "POST", //请求的方式
                        data: { code: res0.code },
                        success: (res1) => { console.log(res1) , that.setData({ openid_list: res1 })  }
                      })
                    },
                  })
        },

微信小程序openid的使用,微信小程序无师自通,微信小程序,小程序,微信

拿到code后,继续访问自己的后端服务器。后端服务器技术栈是C#的webapi + EFcore + SQLite。后端服务器接到一个post请求,code在http的报文中:

//-------POST---user_code API-----------
app.MapPost("/user_code", async (HttpRequest request) =>
{
    var user_code = await request.ReadFromJsonAsync<user_code>();
    string openid = null;
    if (user_code != null)
    {
        openid = get_openid(user_code.code);
        Console.Write("openid:" + openid); 
    }
    return openid;
});

后端服务器再去请求微信的服务器:

string get_openid(string js_code)//获取前端传过来的值
{   

    string url = "https://api.weixin.qq.com/sns/jscode2session?appid=wx1853c69dc576xxxx&secret=6859400ccef19af901a8cbfb167exxxx&js_code=" + js_code + "&grant_type=authorization_code";
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
    request.Method = "GET";
    request.ContentType = "text/html;charset=UTF-8";
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    Stream myResponseStream = response.GetResponseStream();
    StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.UTF8);
    string retString = myStreamReader.ReadToEnd();
    myStreamReader.Close();
    myResponseStream.Close();
    return retString;   
  
}

微信服务器返回了openid给我的后端服务器,还返回了session key,暂时不知道拿来做什么。

后端服务器API把openid返回给了微信小程序,小程序把openid显示了出来。

微信小程序openid的使用,微信小程序无师自通,微信小程序,小程序,微信

 有了这个openid,小程序就可以区分用户的数据,我只需要在数据库的表中加一个openid字段,每次用户提交数据,保存上相应的openid,这些数据就自然属于这个用户了。文章来源地址https://www.toymoban.com/news/detail-599808.html

到了这里,关于用户登录 openid(微信小程序无师自通三)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【微信小程序】通过云函数获取用户openid

    1.pages同级目录下新建新文件夹,命名为cloudFunctions(其他名字也可以)。 2.project.config.json中添加以下内容,值为上一步创建的文件夹名字。编译一次后上一步创建的文件夹前图标就带“云”了。 3.app.js内的App中添加 1.右击cloudFunctions文件夹,点击【新建Node.js云函数】,命名为

    2024年02月10日
    浏览(56)
  • 微信小程序——单点登录,OAuth 2.0,openid

    单点登录 (Single Sign-On,简称SSO)是一种身份认证的机制,允许用户在多个应用程序之间只需进行一次登录,即可访问所有相互信任的应用程序,而无需再次输入用户名和密码。SSO可以提供更好的用户体验和简化的身份验证流程。 OAuth 2.0 是一种开放标准的授权协议,用于授

    2024年02月07日
    浏览(43)
  • 微信小程序如何通过code拿到用户的openid?

    微信有一个静默登录,当进入小程序,页面加载完之后就会默认登录拿到code,这时候我们只需要将拿到的code去调后端的登录接口即可拿到用户的openid,openid在后续的开发中可能经常要用到,可以将其放到storage中,随用随拿

    2024年02月16日
    浏览(55)
  • 获取微信小程序用户的code、openid、session_key

    1、安装微信开发者工具: 在你的电脑上安装微信小程序的开发者工具。你可以从微信开放平台官网下载并安装适用于你的操作系统的开发者工具。 2、注册微信开放平台账号: 如果你还没有微信开放平台账号,需要注册一个。你可以在微信开放平台注册页面进行注册。 3、创

    2024年02月03日
    浏览(45)
  • 关于微信小程序如何调用wx.login获取openId和用户信息

    首先我们需要在微信开发小工具获取code临时登录凭证,下面是js文件也就是一些需要调用的函数。需要做这个的话我们需要上微信公众平台获取AppId和AppSecret 这个是页面 这是获取到的code 本来获取用户信息是getUserInfo但是微信官方已经把那个接口废弃了,只能获取到一些默认

    2024年02月11日
    浏览(51)
  • 微信小程序通过web-view网页授权获取用户公众号OpenID

    第一步: 通过该地址 https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfot=sandbox/index 获取到微信公众号测试号AppID与appsecret (测试公众号可以测试使用,个人公众号不允许使用。微信认证服务号可以使用,微信认证订阅号不可以使用)。 接口权限查看链接: https://developers.weix

    2024年02月08日
    浏览(76)
  • 2023年最新微信小程序获取用户openid、头像昵称的填写能力和方法原生写法

    大家好,下面是我身为小白分享给小白哈, 不懂就问相互学习共同进步! 亲测自用原生代码,感谢大神指点赐教鼓励勿喷; 只需9个一键复制粘贴步骤一气呵成; 先来 本文最终主要实现效果 : 获取微信小程序用户头像昵称的填写能力和方法原生写法 一:先捋一捋思路逻辑

    2024年02月08日
    浏览(79)
  • 微信小程序实现用户登录(详)

            * 源码已经上传到资源处,需要的话点击跳转下载 |  源码下载         用户登录是微信小程序的重要内容,那么今天就讲用户登录的一个流程,当然微信官方文档也有相关的一个登录流程图,这里也给大家附上地址:官方 | 小程序登录 。       用户登录流程可

    2024年02月03日
    浏览(38)
  • 用户登录案例练习(flask+微信小程序)

    目录 flask 微信小程序 1.项目后端步骤 具体步骤可参考flask官网:flask 中文网 (1)创建虚拟环境 (2)激活虚拟环境 (3)在虚拟环境里边安装Flask (4) 粘贴官网的最小flask代码 (5)启动flask服务 2.代码书写 3.运行flask测试  在index.wxml中添加用户登录的标签 在index.js书写函数

    2024年02月16日
    浏览(40)
  • 微信小程序登录,解决无法获取用户信息方法

    在上面的代码中,首先定义了应用的AppID和AppSecret。然后,实现了获取微信用户access_token的方法getAccessToken()和获取微信用户信息的方法getUserInfo()。其中,getAccessToken()方法需要传入微信小程序登录时获取的code,会返回一个包含access_token和openid的Map;getUserInfo()方法需要传入用户

    2024年02月11日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包