广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Unity&Springboot实现本地登陆验证
  • 313
分享到

Unity&Springboot实现本地登陆验证

2024-04-02 19:04:59 313人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录SpringBoot使用idea编译器IDEA上实现登录验证返回登录是否成功和登陆用户的id信息Unity端的请求springboot使用IDEA编译器 IDEA上实现登录验证

springboot使用IDEA编译器

IDEA上实现登录验证

因为这里只能返回网页,但是我们需要返回登陆是否成功的数据所以下面还需要写一个请求方法。
如果登陆失败则将session域中的id删除,这样在unity判断是否登录成功时会直接按请求错误抓取


//登录操作
    @RequestMapping("/login")
    public String login(httpservletRequest request, @RequestParam("userType") String userType, Map<String, Object> map,HttpSession session) {

        session.setAttribute("id",request.getParameter("id"));
        String id = session.getAttribute("id").toString();
        String passWord = request.getParameter("password");

        //如果是管理员登录则查询管理员信息表
        if(userType.equals("0")){
            Administrators administrator = administratorsService.login(id, password);
            if(administrator != null){
                System.out.println("登陆成功");
                return "redirect:/ScheduleInfo";
            }else {
                map.put("msg","账号或密码错误");
                //如果登陆失败则将session域中的id删除,这样在unity判断是否登录成功时会直接按请求错误抓取
                session.removeAttribute("id");
                return "login";
            }
        }else {      //如果是普通用户登录则查找普通用户表
            Employees employee = employeesService.login(id, password);
            if(employee != null){
                if (employeesService.findJobById(id).getJob().equals("巡检人员")){
                    System.out.println("登陆成功");
                    return "redirect:/xInfo";
                }else {
                    System.out.println("登陆成功");
                    return "redirect:/wInfo";
                }
            }else {
                map.put("msg","账号或密码错误");
                session.removeAttribute("id");
                return "login";
            }
        }
    }

返回登录是否成功和登陆用户的id信息

这里使用 @ResponseBody注解,使返回的是数据而不是网页


@RequestMapping("/getUserInfo")
    @ResponseBody
    public String getUserInfo(HttpSession session){
        System.out.println("收到unity登录请求");
        //因为登陆失败以后session域中的id会被删除,所以判断为null则登录失败
        if(session.getAttribute("id") != null){
            String id = session.getAttribute("id").toString();
            System.out.println("登陆成功");
            return id ;
        }
        else {
            System.out.println("登陆失败");
            return null;
        }
    }

Unity端的请求

一个简单的登陆注册界面

在这里插入图片描述

在这里插入图片描述

上脚本,看注释


using System.Collections;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using UnityEngine.networking;

public class HttpHelper : MonoBehaviour
{
	//发出登录请求
    private string postUrl = "http://47.xx.75.xx:8080/login";//如果是本地运行则将前面的47.96.75.29换成localhost
    //获得登录是否成功的数据,也就是运行上面第二个代码的内瓤
    private string postUrl2 = "http://47.xx.75.xx:8080/getUserInfo";
    public GameObject[] uis;
    public GameObject backLoginObj;
    public Text massage;
    public Text countText;
    public Text passwordText;
    private const string userType = "userType";
    private const string userName = "id";
    private const string password = "password";

    public void loginTest()
    {
    //这个方法和登录按钮绑定,用于触发异步方法Post
        StartCoroutine("Post");
    }

    [System.Obsolete]
    IEnumerator Post()
    {
    //发送登录表单,每个人不一样,根据自己需要的表单参数来,一般就是账号密码,这里的userType就是管理员和员工的分类,0是管理员,1是员工。
        WWWFORM form = new WWWForm();
        form.AddField(userType, "0");
        form.AddField(userName, countText.text);
        form.AddField(password, passwordText.text);
		
		//这里发出了登录请求
		//利用UnityWEBRequest通过请求路径这个和postman的操作类似,将表单发送出去
        UnityWebRequest request = UnityWebRequest.Post(postUrl, form);
        yield return request.SendWebRequest();
        if (request.isHttpError || request.isNetworkError)
        {
            Debug.LogError(request.error);
        }
		
		//这里获取了登录是否成功的数据
        UnityWebRequest request2 = UnityWebRequest.Get(postUrl2);
        yield return request2.SendWebRequest();
        //如果登陆失败的Session域中的id是空的,所以会报错,也就是判断登陆是否成功的依据。
        if (request2.isHttpError || request2.isNetworkError)
        {
            massage.text = "登陆失败,账号或密码错误";
        }
        else
        {
        //反之如果登录成功则获得返回的数据,这里就是用户的id
            string receiveContent = request2.downloadHandler.text;
		//这是个普通的ui操作,我的构想是如果登录成功则将这些ui隐藏只显示massage和一个返回键
            foreach (GameObject ui in uis)
            {
                ui.SetActive(false);
            }
            massage.gameObject.SetActive(true);
            backLoginObj.SetActive(true);
			
			//如果返回的数据和用户输入时的账号一样时则判断登陆成功
            if (receiveContent == countText.text)
            {
                massage.text = "登陆成功,欢迎管理员" + receiveContent;
            }
            else//反之登陆失败
            {
                massage.text = "登陆失败,账号或密码错误";
            }
        }
        StopCoroutine("Post");
    }
    public void backLogin()
    {
        SceneManager.LoadScene("SampleScene");
    }
}

最后的运行结果

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

到此这篇关于Unity&Springboot服务器/本地登陆验证的文章就介绍到这了,更多相关Unity&Springboot服务器/本地登陆验证内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Unity&Springboot实现本地登陆验证

本文链接: https://www.lsjlt.com/news/131085.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Unity&Springboot实现本地登陆验证
    目录Springboot使用IDEA编译器IDEA上实现登录验证返回登录是否成功和登陆用户的id信息Unity端的请求Springboot使用IDEA编译器 IDEA上实现登录验证 ...
    99+
    2022-11-12
  • SpringBoot实现滑块验证码验证登陆校验功能详解
    目录前言一、实现效果二、实现思路三、实现步骤1. 后端 java 代码1.1 新建一个拼图验证码类1.2 新建一个拼图验证码工具类1.3 新建一个 service 类1.4 新建一个...
    99+
    2022-11-13
  • javascript 实现登陆验证
    随着互联网的普及,各种网站和应用对用户登陆的需求也越来越多。而随之而来的问题是用户的账号和个人信息的安全性变得更加关键。因此,为确保用户账号的安全,对登陆的验证也就变得非常重要。本文将介绍如何用javascript实现一个简单的登陆验证功能...
    99+
    2023-05-17
  • gogin+token(JWT)验证实现登陆验证
    1.准备 go get github.com/dgrijalva/jwt-go go get github.com/gin-gonic/gin  2.代码 package ...
    99+
    2022-11-12
  • SpringBoot集成JWT实现登陆验证的方法详解
    1:首先,我们需要在项目中导入两个依赖: <dependency> <groupId>com.auth0</gr...
    99+
    2022-11-13
  • nodejs实现登陆验证功能
    本文实例为大家分享了nodejs实现登陆验证的具体代码,供大家参考,具体内容如下 登陆验证需要提交数据,一种使用form表单提交数据,另一种使用原生js提交数据 form表单提交 搭...
    99+
    2022-11-13
  • JavaScript实现登陆验证码的脚本怎么写
    今天小编给大家分享一下JavaScript实现登陆验证码的脚本怎么写的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。填写输入信...
    99+
    2023-06-27
  • go gin+token验证是怎么实现登陆验证
    本篇文章为大家展示了go gin+token验证是怎么实现登陆验证,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.准备go get github.com/dgrija...
    99+
    2023-06-22
  • layui实现登陆界面验证码
    本文实例为大家分享了layui实现登陆界面验证码的具体代码,供大家参考,具体内容如下 效果图: html: <div class="layui-form-item">...
    99+
    2022-11-12
  • python装饰器实现登陆验证
          ...
    99+
    2023-01-30
    python
  • vue+springboot实现登录验证码
    本文实例为大家分享了vue+springboot实现登录验证码的具体代码,供大家参考,具体内容如下 先看效果图 在login页面添加验证码html 在后端pom文件添加kaptc...
    99+
    2022-11-12
  • nodejs怎么实现登陆验证功能
    这篇文章主要介绍“nodejs怎么实现登陆验证功能”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“nodejs怎么实现登陆验证功能”文章能帮助大家解决问题。登陆验证需要提交数据,一种使用form表单提...
    99+
    2023-06-30
  • Token登陆验证机制怎么实现
    这篇文章主要介绍“Token登陆验证机制怎么实现”,在日常操作中,相信很多人在Token登陆验证机制怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Token登陆验证机制怎么实现”的疑惑有所帮助!接下来...
    99+
    2023-06-21
  • selenium+opencv实现滑块验证码的登陆
    目录环境selenium登录网站requests抓取验证码图片OpenCV识别缺口位置模拟拖动滑块脚本示例:很多网站登录登陆时都要用到滑块验证码,在某些场景例如使用爬虫爬取信息时常常...
    99+
    2023-05-15
    selenium opencv滑块验证码 opencv滑块验证码
  • layui如何实现登陆界面验证码
    这篇文章主要介绍“layui如何实现登陆界面验证码”,在日常操作中,相信很多人在layui如何实现登陆界面验证码问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”layui如何实现登陆界面验证码”的疑惑有所帮助!...
    99+
    2023-06-21
  • SpringBoot集成JWT实现Token登录验证
    目录 1.1 JWT是什么? 1.2 JWT主要使用场景 1.3 JWT请求流程 1.4 JWT结构 二,SpringBoot集成JWT具体实现过程 2.1添加相关依赖 2.2自定义跳出拦截器的注解 2.3自定义全局统一返回值方法,异常类...
    99+
    2023-09-06
    spring boot 后端 java
  • vue+springboot如何实现登录验证码
    这篇文章主要介绍vue+springboot如何实现登录验证码,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!先看效果图在login页面添加验证码html在后端pom文件添加kaptcha依赖<dependenc...
    99+
    2023-06-15
  • Python实现简单登陆验证(文件操作)
    代码主要功能:   利用Python实现简单的登陆验证,代码主要有两个部分组成:     第一部分:登陆页面,作用是实现用户名和密码的输入        利用两个输入函数input()来实现对用户名和密码的输入     第二部分:文件验...
    99+
    2023-01-30
    操作 简单 文件
  • Token登陆验证机制的原理及实现
    session简介 做过Web开发的程序员应该对Session都比较熟悉,Session是一块保存在服务器端的内存空间,一般用于保存用户的会话信息。 用户通过用户名和密码登陆成功之...
    99+
    2022-11-12
  • SpringBoot登录验证token拦截器的实现
    目录注解定义token生成与验证拦截器定义拦截器配置定义拦截器的方法执行类注解使用返回值-全局异常类定义各种测试不传token制造可行的假token伪造token测试拓展:从请求中获...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作