小程序登录

Posted 一个九

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小程序登录相关的知识,希望对你有一定的参考价值。

小程序新手上路磕磕碰碰终于把登录给弄出来了

首先整理思路:

  1.登录 并 保存cookis

  3.替换其他请求的head

 

实现:

1.登录

 formSubmit: function (e) {
    wx.showLoading({
      title: ‘登录中...‘,
    })
    console.log(e);
    this.setData({ disabled: true });
    wx.request({
      url: ‘http://127.0.0.1:9999/mytest/login‘, //仅为示例,并非真实的接口地址
      data: {
        username: e.detail.value.no,
        password: e.detail.value.pwd
      },
      header: {
        ‘content-type‘: ‘application/json‘, // 默认值
      
      },
      success: function (res) {
        console.log(res);
        if (res.statusCode == 200) {
          if (res.data.error == true) {
            wx.showToast({
              title: res.data.msg,
              icon: ‘none‘,
              duration: 2000
            })
            
          } else {
            wx.setStorageSync(‘student‘, res.data.data);
            wx.showToast({
              title: res.data.msg,
              icon: ‘success‘,
              duration: 2000
            })
       //缓存JSESSIONID wx.setStorage({ key:
"token", data: res.cookies[0], }) wx.navigateTo({ url: ‘../packageSell/packageSell‘ , }) } } else { wx.showToast({ title: ‘服务器出现错误‘, icon: ‘none‘, duration: 2000 }) } } }) },

2.替换其他请求head

goPackageSellPage: function (e) {
    wx.showLoading({
      title: ‘请求中...‘,
    })
    console.log(e);
    this.setData({ disabled: true });

    var header;
    header = {
      ‘content-type‘: ‘application/json‘,
      ‘cookie‘: wx.getStorageSync("token")//读取缓存JSESSIONID,实现权限认证
    };

    wx.request({
      url: ‘http://127.0.0.1:9999/mytest/user/dataxx‘, //仅为示例,并非真实的接口地址
      data: {
      
      },
      header: header,
      success: function (res) {
        console.log(res);
        if (res.statusCode == 200) {
          if (res.data.error == true) {
            wx.showToast({
              title: res.data.msg,
              icon: ‘none‘,
              duration: 2000
            })

          } else {
            wx.setStorageSync(‘student‘, res.data.data);
            wx.showToast({
              title: res.data.msg,
              icon: ‘success‘,
              duration: 2000
            })
            wx.navigateTo({
              url: ‘../index/index‘,
            })
          }
        } else {
          wx.showToast({
            title: ‘服务器出现错误‘,
            icon: ‘none‘,
            duration: 2000
          })
        }
      }
    })
  },

3.意外收获

本次研究学到几点小程序代码小技巧

  3.1  请求路径的书写

//新建param.js保存
export const rootUrl2 = ‘http://127.0.0.1/‘
export const rootUrl = `${rootUrl2}mytest`;

//有路径的界面js文件头部
import {rootUrl} from ‘../../utils/params‘

//路径书写
 url: `${rootUrl}/user/dataxx`,
 url:`${rootUrl}/images/upload/bg.jpg` ,

 

  3.2 缓存的写入与读取

//写入  
wx.setStorage({
              key: "xxx",
              data:"message",
            })

//读取
wx.getStorageSync("xxx")

以上是关于小程序登录的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序实现微信登陆(TP5后端)

小程序各种功能代码片段整理---持续更新

Android获取各个应用程序的缓存文件代码小片段(使用AIDL)

提效小技巧——记录那些不常用的代码片段

导航 PopUpToInclusive 不起作用?重新打开应用程序时,它会打开登录片段而不是电子邮件登录片段

Android小部件,启动一个片段?