FastApi和Jquery传输图片

warning: 这篇文章距离上次修改已过205天,其中的内容可能已经有所变动。

在FastAPI和Jquery中传输图片,你可以使用FastAPI接收图片数据,并通过Jquery发送请求。以下是一个简单的例子:

首先,使用FastAPI框架创建一个API接口来接收图片数据:




from fastapi import FastAPI, File, UploadFile
from fastapi.responses import JSONResponse
 
app = FastAPI()
 
@app.post("/uploadfile/")
async def create_upload_file(file: UploadFile = File(...)):
    contents = await file.read()
    # 这里可以添加保存文件的代码
    return JSONResponse(content={"filename": file.filename}, status_code=200)

然后,使用Jquery发送请求并附上图片文件:




<!DOCTYPE html>
<html>
<head>
    <title>FastAPI and Jquery Image Upload</title>
    <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
</head>
<body>
 
<input type="file" id="imageInput">
<button id="uploadButton">Upload</button>
 
<script>
    $(document).ready(function () {
        $('#uploadButton').click(function () {
            var formData = new FormData();
            var imageFile = $('#imageInput')[0].files[0];
            formData.append('file', imageFile);
 
            $.ajax({
                url: 'http://localhost:8000/uploadfile/',
                type: 'POST',
                data: formData,
                processData: false,
                contentType: false,
                success: function (response) {
                    console.log(response.filename);
                },
                error: function () {
                    console.log('Error');
                }
            });
        });
    });
</script>
 
</body>
</html>

在这个例子中,当用户点击上传按钮时,Jquery会捕获图片文件,并通过Ajax请求发送到FastAPI服务器。服务器端的API接口会接收文件,并可以对其进行处理(例如保存到磁盘)。

确保FastAPI服务器已经运行在http://localhost:8000,并且在浏览器中打开这个HTML页面进行测试。

最后修改于:2024年08月07日 09:03

评论已关闭

推荐阅读

DDPG 模型解析,附Pytorch完整代码
2024年11月24日
DQN 模型解析,附Pytorch完整代码
2024年11月24日
AIGC实战——Transformer模型
2024年12月01日
Socket TCP 和 UDP 编程基础(Python)
2024年11月30日
python , tcp , udp
如何使用 ChatGPT 进行学术润色?你需要这些指令
2024年12月01日
AI
最新 Python 调用 OpenAi 详细教程实现问答、图像合成、图像理解、语音合成、语音识别(详细教程)
2024年11月24日
ChatGPT 和 DALL·E 2 配合生成故事绘本
2024年12月01日
omegaconf,一个超强的 Python 库!
2024年11月24日
【视觉AIGC识别】误差特征、人脸伪造检测、其他类型假图检测
2024年12月01日
[超级详细]如何在深度学习训练模型过程中使用 GPU 加速
2024年11月29日
Python 物理引擎pymunk最完整教程
2024年11月27日
MediaPipe 人体姿态与手指关键点检测教程
2024年11月27日
深入了解 Taipy:Python 打造 Web 应用的全面教程
2024年11月26日
基于Transformer的时间序列预测模型
2024年11月25日
Python在金融大数据分析中的AI应用(股价分析、量化交易)实战
2024年11月25日
AIGC Gradio系列学习教程之Components
2024年12月01日
Python3 `asyncio` — 异步 I/O,事件循环和并发工具
2024年11月30日
llama-factory SFT系列教程:大模型在自定义数据集 LoRA 训练与部署
2024年12月01日
Python 多线程和多进程用法
2024年11月24日
Python socket详解,全网最全教程
2024年11月27日