iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >FastApi+Vue+LayUI如何实现前后端分离
  • 688
分享到

FastApi+Vue+LayUI如何实现前后端分离

2023-06-25 16:06:31 688人浏览 泡泡鱼
摘要

小编给大家分享一下Fastapi+Vue+LayUI如何实现前后端分离,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!前言在前面的Api开发中,我们使用FastAp

小编给大家分享一下Fastapi+Vue+LayUI如何实现前后端分离,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

    前言

    在前面的Api开发中,我们使用FastApi已经可以很好的实现。但是实际使用中,我们通常建议前后端项目分离。今天我们就使用FastApi+Vue+LayUI做一个前后端分离的Demo。

    项目设计

    后端

    后端我们采用FastApi在新的test视图中,定义一个路由,并将其注册到app中,并且在test视图中定义一个接口,实现模拟从数据库读取数据供前端调用渲染。
    代码

    test.py

    from fastapi import FastAPI,Depends,Header,HttpException,APIRouterfrom fastapi.param_functions import Bodyfrom starlette.requests import Requestfrom starlette.templating import Jinja2Templatesfrom starlette import statusimport uvicornfrom deta import Detafrom fastapi.responses import StreamingResponsefrom fastapi.responses import JSONResponse# 实例化路由器router = APIRouter()templates = Jinja2Templates('templates')# 注意,视图这里使用router来声明请求方式&URI@router.get('/info')def user_list():    # vue的响应数据    items = [        {'id':'1','name':'phyger'},        {'id':'2','name':'fly'},        {'id':'3','name':'enheng'},        ]    return jsONResponse(content=items)@router.get('/')def welcome():    return "这里是测试路由"'''实际上,这里的home.html也是需要前端服务去向用户渲染的,但是我们为了方便演示,未启动前端服务器,直接将前端代码写在了home.html中,实际上,当用户请求/check的时候,前端代码会去请求/info接口获取数据,从而实现前端页面的数据渲染。'''@router.get('/check')def home(request:Request):    return templates.TemplateResponse(name='home.html',context={'request':request,})

    前端

    前端我们直接导入Vue、LayUI、AxiOS的JS和CSSCDN资源,在Vue实例的mount阶段,使用axios调用后端接口拿到数据,使用LayUI的样式对table元素进行美化。
    代码

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <script src="https://unpkg.com/vue@next"></script>    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>    <!-- 引入 layui.css -->    <link rel="stylesheet" href="https://www.layuicdn.com/layui/css/layui.css" rel="external nofollow" />    <!-- 引入 layui.js -->    <script src="https://www.layuicdn.com/layui/layui.js" type="text/javascript" charset="utf-8"></script>    <title>Home</title></head><body>    <div id="app">        <table class="layui-table">            <tr v-for="p in infos">                <td>[[ p.id ]]</td>                <td>[[ p.name ]]</td>            </tr>        </table>    </div>    <table id="test" class="layui-table"></table><script type="text/javascript">    const Vapp = Vue.createApp({        data() {            return {                infos: [{id:1,name:'phyger'}],                info: "hello vue..."            }        },        mounted() {            this.showinfo();        },        methods: {            showinfo(){                axios.get('/test/info')                .then(response=>{                    this.infos=response.data;                    console.log(response);                    console.log(this.infos);                })                ,err=>{                    console.log(err);                };            },        },    })    Vapp.config.compilerOptions.delimiters = ['[[', ']]']    Vapp.mount('#app')</script></body></html>

    运行项目

    启动 FastApi 后端服务器,访问 /test/check 接口。

    FastApi+Vue+LayUI如何实现前后端分离

    Q&A

    Q:为什么在请求/info 接口总会出现一个 Temporary Redirect 重定向呢?

    FastApi+Vue+LayUI如何实现前后端分离

    A:原因是因为我们在 FastApi 接口定义的时候,uri 的格式不规范导致,uri 的结尾不需要/,如果你接口增加了/,我们使用浏览器访问 uri,浏览器会忽略结尾的/,FastApi 会在内部进行查重定向,将浏览器不带/的请求重定向到我们定义的带/的视图函数上。

    以上是“FastApi+Vue+LayUI如何实现前后端分离”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

    --结束END--

    本文标题: FastApi+Vue+LayUI如何实现前后端分离

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

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

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

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

    下载Word文档
    猜你喜欢
    • FastApi+Vue+LayUI如何实现前后端分离
      小编给大家分享一下FastApi+Vue+LayUI如何实现前后端分离,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!前言在前面的Api开发中,我们使用FastAp...
      99+
      2023-06-25
    • FastApi+Vue+LayUI实现前后端分离的示例代码
      目录前言项目设计后端前端运行项目Q&A前言 在前面的Api开发中,我们使用FastApi已经可以很好的实现。但是实际使用中,我们通常建议前后端项目分离。今天我们就使用Fas...
      99+
      2024-04-02
    • SpringSecurity如何实现前后端分离
      这篇文章主要介绍“SpringSecurity如何实现前后端分离”,在日常操作中,相信很多人在SpringSecurity如何实现前后端分离问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”SpringSecur...
      99+
      2023-07-05
    • php前后端分离如何实现
      要实现PHP前后端分离,需要使用以下技术和方法:1. 使用前端框架:选择一个前端框架(如React、Vue.js、Angular等)...
      99+
      2023-10-09
      php
    • SpringBoot+mybatis+Vue如何实现前后端分离项目
      这篇文章主要为大家展示了“SpringBoot+mybatis+Vue如何实现前后端分离项目”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“SpringBoot+mybatis+Vue如何实现前后...
      99+
      2023-06-22
    • Python+Vue实现简单的前后端分离
      准备工作 安装Node环境安装Python环境 注意:项目整个过程需要从后往前,即先数据库->后端->前端;启动流程也是先启动后端项目,再启动前端项目 完整项目地址:地址 前端 开发工具:Vis...
      99+
      2023-08-31
      python vue mysql 前后端分离
    • nodeJS+vue如何构建前后端分离
      这篇文章主要介绍nodeJS+vue如何构建前后端分离,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!准备工作:1.安装nodejs2.安装依赖包express4.x3.安装vue-c...
      99+
      2024-04-02
    • Flask Vue前后端分离实例分析
      这篇文章主要讲解了“Flask Vue前后端分离实例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Flask Vue前后端分离实例分析”吧!vue官网:开源的 Javascript 框架...
      99+
      2023-07-02
    • vue前后端分离如何实现单点登录跨域
      这篇文章主要介绍“vue前后端分离如何实现单点登录跨域”,在日常操作中,相信很多人在vue前后端分离如何实现单点登录跨域问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue前后端分离如何实现单点登录跨域”的疑...
      99+
      2023-07-04
    • 如何用php实现前端后台分离
      这篇文章主要讲解了“如何用php实现前端后台分离”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何用php实现前端后台分离”吧!构建后台API接口PHP作为一种服务器端脚本语言,相比于Jav...
      99+
      2023-07-05
    • Java项目如何实现前后端分离
      今天就跟大家聊聊有关Java项目如何实现前后端分离,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。构建springboot项目我的目录结构:(结果未按标准书写,仅作说明)不管用什么ID...
      99+
      2023-05-31
      java 前后端分离 ava
    • 如何利用Python+Vue实现简单的前后端分离
      目录准备工作前端后端数据库总结准备工作 安装Node环境安装Python环境 注意:项目整个过程需要从后往前,即先数据库->后端->前端;启动流程也是先启动后端项目,再启...
      99+
      2024-04-02
    • golang前后端分离如何实现交互
      在 Golang 中实现前后端分离的交互可以通过以下几种方式:1. RESTful API:将后端独立的服务,提供 RESTful ...
      99+
      2023-10-20
      golang
    • 解析Thinkphp5如何实现前后端分离
      这篇文章主要介绍解析Thinkphp5如何实现前后端分离,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!用Thinkphp5实现纯API开发实现前后端分离大致步骤如下解决跨域请求问题2.改变输出数据格式为API常用返回...
      99+
      2023-06-15
    • SpringBoot+VUE实现前后端分离的实战记录
      一,前端VUE项目 这里使用VUE UI创建一个VUE项目 命令行输入vue ui进入 手动配置项目 选中这三个 点击下一步->点击创建项目 用IDEA打开刚才创建的项目...
      99+
      2024-04-02
    • vue+mockjs模拟数据如何实现前后端分离开发
      这篇文章主要介绍了vue+mockjs模拟数据如何实现前后端分离开发,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在项目中尝试了mockjs...
      99+
      2024-04-02
    • SpringBoot如何实现前后端分离国际化
      这篇“SpringBoot如何实现前后端分离国际化”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SpringBoot如何实现...
      99+
      2023-07-05
    • django前后端分离怎么实现
      要实现Django的前后端分离,可以使用Django Rest Framework(DRF)作为后端框架,同时使用一个前端框架(如R...
      99+
      2023-10-09
      django
    • SpringSecurity怎么实现前后端分离
      今天小编给大家分享一下SpringSecurity怎么实现前后端分离的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Sprin...
      99+
      2023-07-05
    • JavaScript怎么实现前后端分离
      本篇内容介绍了“JavaScript怎么实现前后端分离”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 前...
      99+
      2024-04-02
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作