微信小程序登录态和检验注册过没的app.js写法

微信小程序登录态和检验注册的实现涉及到小程序端的代码和服务端的代码,因此在您进行开发时需要分别处理。

  1. 实现登录态

小程序的登录态是通过wx.login()获取的,具体实现步骤如下:

在小程序中,在需要登录的页面中,首先调用wx.login()获取到微信返回的code码,然后使用wx.request()将该code码发送到服务端。以下是示例代码:

wx.login({
  success: function(res) {
    if (res.code) {
      wx.request({
        url: 'http://example.com/api/login',
        data: {
          code: res.code
        },
        success: function(res) {
          console.log(res.data);
          // 将服务端返回的登录态存储在本地
          wx.setStorageSync('token', res.data.token);
        }
      });
    } else {
      console.log('登录失败!' + res.errMsg);
    }
  }
});

注意,在上面的代码中,我们将服务端返回的登录态存储在本地,方便以后使用。

  1. 检验注册

当用户登录后,将使用用户的登录态调用服务端的API,以便确认用户是否已经注册。以下是一个示例代码:

wx.request({
  url: 'http://example.com/api/check_registered',
  data: {
    token: wx.getStorageSync('token')
  },
  success: function(res) {
    console.log(res.data);
    if (res.data.code === 0) {
      // 用户已注册
      // 在该函数中继续执行业务逻辑
      do_business_logic();
    } else {
      // 用户未注册
      // 在该函数中执行跳转至注册页的业务逻辑
      wx.navigateTo({
        url: '/pages/register/register'
      });
    }
  }
});

注意,在上述代码中,我们调用了wx.getStorageSync('token')函数来获取存储在本地的登录态。

除了上述示例之外,您还可以参考以下代码:

// login.js
Page({
  /**
   * 登录后,调用该函数检测是否已经注册
   */
  checkRegistered: function() {
    wx.request({
      url: 'http://example.com/api/check_registered',
      data: {
        token: wx.getStorageSync('token')
      },
      success: function(res) {
        console.log(res.data);
        if (res.data.code === 0) {
          // 用户已注册
          // 在该函数中继续执行业务逻辑
          do_business_logic();
        } else {
          // 用户未注册
          // 在该函数中执行跳转至注册页的业务逻辑
          wx.navigateTo({
            url: '/pages/register/register'
          });
        }
      }
    });
  }
});

// app.js
App({
  /**
   * 小程序启动时,检查登录态并检测是否已经注册
   */
  onLaunch: function() {
    wx.checkSession({
      success: function() {
        // session未过期,检查是否已经注册
        wx.getStorage({
          key: 'token',
          success: function(res) {
            wx.request({
              url: 'http://example.com/api/check_registered',
              data: {
                token: res.data
              },
              success: function(res) {
                console.log(res.data);
                if (res.data.code === 0) {
                  // 用户已注册
                  // 在该函数中继续执行业务逻辑
                  do_business_logic();
                } else {
                  // 用户未注册
                  // 在该函数中执行跳转至注册页的业务逻辑
                  wx.navigateTo({
                    url: '/pages/register/register'
                  });
                }
              }
            });
          },
          fail: function() {
            // 本地存储未找到token,重新登录
            wx.navigateTo({
              url: '/pages/login/login'
            });
          }
        });
      },
      fail: function() {
        // session过期,重新登录
        wx.navigateTo({
          url: '/pages/login/login'
        });
      }
    });
  }
});

在上述代码中,我们将检验用户是否已注册的逻辑放置在了login和onLaunch这两个函数中。这样一来,当用户在登录页面登录成功后,会自动调用checkRegistered()函数检验用户是否已经注册。而在小程序启动时,会自动进行检验登录态,并根据检验结果执行相应的业务逻辑。

希望你能够从以上的示例和代码中学到些有用的内容,祝您完成小程序开发的一切任务成功。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:微信小程序登录态和检验注册过没的app.js写法 - Python技术站

(0)
上一篇 2023年5月23日
下一篇 2023年5月23日

相关文章

  • JSP 中Servlet的自己实现

    JSP 中Servlet的自己实现 Servlet是Java中常用的服务器端程序,可以接收和处理HTTP请求,并返回相应的 HTTP响应。JSP(Java Server Pages) 是一个动态的Java web页面技术,可以在网页中嵌入 Java 代码片段,用于生成动态内容。 在JSP中使用Servlet,通常有两种方式:一是在JSP页面中直接使用标签引入…

    Java 2023年6月15日
    00
  • Java File类的简单使用教程(创建、删除、遍历与判断是否存在等)

    Java File类的简单使用教程 Java中的File类是用于操作文件和目录的类,可以进行文件和目录的创建、删除、遍历以及判断文件和目录是否存在等操作。下面我们将介绍如何使用File类进行这些操作。 创建文件 要创建一个文件,我们可以使用File类的构造函数,然后使用createNewFile()方法。示例代码如下: File file = new Fil…

    Java 2023年5月19日
    00
  • jsp hibernate的分页代码第2/3页

    针对“jsp hibernate的分页代码第2/3页”,我将提供以下完整攻略: JSP Hibernate 分页代码攻略 什么是 JSP 分页? JSP 分页是指将大量数据分页展示在网页上,每页展示固定的数据量并提供用户进行翻页查看的方式,以便更好地展示数据和提升用户体验。 基于 Hibernate 的 JSP 分页 Hibernate 是一款开源的 ORM…

    Java 2023年5月31日
    00
  • 使用JSP开发WebMail系统

    使用JSP开发WebMail系统的完整攻略包括以下步骤: 1. 确定技术栈和框架 首先需要确定使用的后端技术栈和框架,可以选择使用Java语言、JSP、Servlet、Spring、Hibernate等技术栈和框架来实现WebMail系统的开发。 2. 确定功能需求 在技术栈和框架确定之后,需要确定WebMail的功能需求,包括邮件的收发、删除、搜索、分类等…

    Java 2023年6月15日
    00
  • Spring SpringMVC在启动完成后执行方法源码解析

    在Spring和SpringMVC中,我们可以在启动完成后执行一些方法。本文将详细讲解Spring和SpringMVC在启动完成后执行方法的源码解析,并提供两个示例说明。 Spring中启动完成后执行方法 在Spring中,我们可以使用ApplicationListener接口来监听ApplicationContext的启动事件。下面是一个示例: @Comp…

    Java 2023年5月18日
    00
  • Netty之数据解码

    一、概况    作为Java世界使用最广泛的网络通信框架Netty,其性能和效率是有目共睹的,好多大公司都在使用如苹果、谷歌、Facebook、Twitter、阿里巴巴等,所以不仅仅是因为Netty有高效的性能与效率,更重要的是:屏蔽了底层的复杂度,简单易懂的编程模型,适应更广泛的应用场景,以及活跃的开发者社区。  本篇博客是作为Netty之数据编码的续篇,…

    Java 2023年4月30日
    00
  • springboot2.0和springcloud Finchley版项目搭建(包含eureka,gateWay,Freign,Hystrix)

    下面是详细的“springboot2.0和springcloud Finchley版项目搭建(包含eureka,gateWay,Feign,Hystrix)”攻略。 准备环境 首先,需要准备以下环境: JDK 1.8及以上版本 Maven 3.5及以上版本 IntelliJ IDEA或者eclipse等IDE 创建Spring Boot项目 打开Intell…

    Java 2023年5月19日
    00
  • SpringSecurity构建基于JWT的登录认证实现

    SpringSecurity构建基于JWT的登录认证实现 本文将介绍如何使用SpringSecurity框架,在基于JWT的前后端分离应用中,实现登录认证功能。 准备工作 在开始介绍实现方案之前,我们需要准备好以下工具和环境: JDK 8 及以上版本 Maven 及其配置 Spring Boot Spring Security JWT Step 1: 创建项…

    Java 2023年5月20日
    00
合作推广
合作推广
分享本页
返回顶部