Skip to content
 
 

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

beisi-start

全栈开发者的第一个练习

任务书

  • 任务描述

    fork 本仓库,并基于本仓库开发一个前后端分离的简单登录系统,要求前端提供登录页面,后端提供登录接口,前端通过 API 调用进行登录验证

    备注:需要将源代码提交至 fork 后的仓库,并将作品部署到服务器上。

  • 功能要求

    • 前端部分

      • 实现一个登录页面,包括:
        • 输入框:用户名
        • 输入框:密码
        • 登录按钮
      • 点击登录按钮后:
        • 将用户名和密码发送到后端 API
        • 根据后端返回结果进行提示(登录成功或失败)
        • 登录成功后显示欢迎信息(如:"欢迎,xxx")
    • 后端部分

      • 提供一个 API 接口 /api/login,支持 POST 请求。

      • 接口要求:

        • 接收前端传来的用户名和密码
        • 校验账号密码是否正确(可以硬编码,如 admin/123456)
        • 正确返回登录成功信息和模拟 Token(如随便生成的字符串或 UUID)
        • 错误返回登录失败提示
      • 返回数据格式(统一 JSON 结构):

        • 成功示例:

          {
            "code": 0,
            "message": "Login successful",
            "data": {
              "token": "abcdef123456"
            }
          }
        • 失败示例:

          {
            "code": 1,
            "message": "Invalid username or password",
            "data": null
          }
  • 技术要求

    • 前端:可以使用原生 HTML/CSS/JavaScript,或使用任意框架(Vue、React 均可),自行选择。
    • 后端:使用任意熟悉的技术栈(如 Node.js+Express、Python+Flask、Java+Spring Boot 等)。
    • 数据可以保存在服务器内存中,无需接数据库。
    • 完成前后端之后,需要部署到服务器上供用户访问(使用 IP 地址或域名)。
  • 其他要求

    • 前端必须通过 HTTP 请求调用后端接口,禁止在前端直接写账号密码或硬编码模拟登录。
    • 后端必须能独立运行,提供接口访问。
    • 接口文档清晰,说明每个接口的请求方式、参数、返回示例。
    • 前端有基本的错误提示(如用户名密码错误时提示用户)。
    • 前端/后端代码需要注意基本的代码规范与结构。
  • 验收标准

    项目 说明
    前端功能 页面完整,能正常调用接口登录
    后端功能 正确验证登录信息并返回符合规范的 JSON 数据
    前后端交互 接口联调顺畅,无硬编码假数据
    错误处理 登录失败时有清晰提示
    部署 项目能在公网进行访问
    代码规范 基本代码规范良好,易读
  • 提交物要求

    • 项目部署后的链接,可以使用 IP 地址或域名
    • github 仓库链接(包含前后端代码)
  • 其他说明

    • 成功登录返回的 token 可以是随机生成的字符串,或者简单模拟。
    • 前端拿到 token 后可以存储在 localStorage 或其他存储中,以便后续使用。
    • 不要求真正的 Token 鉴权功能(如 JWT 验证),只需模拟登录。
  • 附加(加分项)

    • 页面美观简洁(如使用 CSS 美化登录页面)
    • 前端有表单验证(如用户名和密码不能为空)
    • 前端有简单的 loading 效果(比如登录中禁用按钮)
    • 登录后能本地存储 Token(如 localStorage)

供参考的登录接口文档

  • 接口描述

    用户登录接口,验证用户名和密码,返回登录状态及模拟 Token。

  • 请求接口

    • URL:/api/login
    • 请求方式:POST
    • 请求参数类型:application/json
  • 请求参数

    参数名 类型 是否必填 说明
    username string 用户名
    password string 密码
  • 请求示例

    {
      "username": "admin",
      "password": "123456"
    }
  • 响应结果

    • 成功响应(账号密码正确)

      • HTTP 状态码:200

        {
          "code": 0,
          "message": "Login successful",
          "data": {
            "token": "abcdef123456"
          }
        }
      • 字段说明

        字段名 类型 说明
        code int 0 表示成功
        message string 提示信息
        data.token string 登录成功后的模拟 Token
    • 失败响应(账号密码错误)

      • HTTP 状态码:200

        {
          "code": 1,
          "message": "Invalid username or password",
          "data": null
        }
      • 字段说明

        字段名 类型 说明
        code int 1 表示失败
        message string 错误提示信息
        data null 登录失败无返回数据

About

全栈开发者的第一个练习

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors