当前位置: 首页 > news >正文

短视频系统源码,启动一个node后台服务 - 云豹科技

短视频系统源码,启动一个node后台服务

使用koa创建的方式

入口index.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><!-- form的请求 --><form action="/add" method="POST"><input type="text" name="key1"><input type="submit" value="Add"></form><script src="https://cdn.bootcdn.net/ajax/libs/axios/0.21.0/axios.js"></script><script>// axios的请求(async () => {const res2 = await axios.post('/api/users', {key: 'value',});document.writeln(`RES : ${JSON.stringify(res2.data)}`)})()</script>
</body>
</html>

index.js

const Koa = require('koa');
const app = new Koa();
const router = require('koa-router')();const bodyParser = require('koa-bodyparser');     // 用于处理form表达提交的数据格式
app.use(require('koa-static')(__dirname + '/'));  // 引入index.html文件
app.use(bodyParser());router.post('/add', async (ctx, next) => {console.log('body', ctx.request.body)ctx.body='这是post请求';
})
router.get('/add', async (ctx, next) => {console.log('body', ctx.request.body)
})
router.post('/api/users', async (ctx, next) => {console.log('body', ctx.request.body)
})app.use(router.routes())
app.listen(3000)

使用http的方式,创建包含跨域的请求(正向代理、反向代理)

index.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><script src="https://cdn.bootcdn.net/ajax/libs/axios/0.21.0/axios.js"></script><script>(async () => {// 跨域请求,客户端正向代理方式(反向代理则不需要这些配置)axios.defaults.baseURL = 'http://localhost:4000';axios.defaults.withCredentials = trueconst res2 = await axios.post('/api/users', {key: 'value',});document.writeln(`RES : ${JSON.stringify(res2.data)}`)})()</script>
</body>
</html>

index.js

const api = require('./api');
const proxy = require('./proxy');
api.listen(4000);
proxy.listen(3000);

proxy.js

const express = require('express');
const app = express();
app.use(express.static(__dirname + '/'));// 跨域请求,服务端反向代理方式(正向代理则不需要这些配置)
const {createProxyMiddleware} = require('http-proxy-middleware');  // 代理插件
app.use('/api', createProxyMiddleware({target: 'http://localhost:4000',changeOrigin: false,
}))module.exports = app;

api.js

const http = require('http');
const fs = require('fs');
const app = http.createServer((req, res) => {const {url, method, headers} = req;// 返回index.htmlif (url === '/' && method === 'GET') {fs.readFile('index.html', (err, data) => {if (err) {res.writeHead(500, {'Content-Type': 'text/plain'});res.end('服务器错误')}res.writeHead(200, {'Content-Type': 'text/html'})res.end(data)})// 处理/api/users} else if ((method === 'GET' || method === 'POST') && url === '/api/users') {// 正向代理需要的配置(反向代理则不需要这些配置)res.setHeader('Access-Control-Allow-Origin', 'http://localhost:3000')res.setHeader('Access-Control-Allow-Credentials', 'true')res.setHeader('Content-Type', 'application/json');res.setHeader('Set-Cookie', 'cookie=val12123')res.end(JSON.stringify([{name: 'tom'}]))} else if (method === 'OPTIONS' && url === '/api/users') {// 正向代理需要的配置(反向代理则不需要这些配置)res.setHeader('Access-Control-Allow-Credentials', 'true')res.writeHead(200, {'Access-Control-Allow-Origin' : 'http://localhost:3000','Access-Control-Allow-Headers' : 'X-Token,Content-Type','Access-Control-Allow-Methods' : 'PUT',})res.end()}
})
module.exports = app;

以上就是短视频系统源码,启动一个node后台服务, 更多内容欢迎关注之后的文章

http://www.jsqmd.com/news/63630/

相关文章:

  • 2026 北京婚姻律师推荐:TOP6 机构口碑排名,隐私保护 + 透明收费
  • 2025年热门的智能无主灯厂家最新TOP排行榜
  • 2025年评价高的定制型胶辊TOP品牌厂家排行榜
  • pg 批量数据插入
  • 详细介绍:如何在 Ubuntu 22.04 中安装 Docker 引擎和 Linux 版 Docker Desktop 桌面软件
  • 2025年口碑好的小型台车炉用户口碑最好的厂家榜
  • 2025年知名的飞机地面空调设备通风软管/MGS通风软管厂家最新实力排行
  • 2025年热门的过滤器/高压精密过滤器厂家最新权威实力榜
  • 2025年哈尔滨汽车隐形车衣品牌与安装店排行榜,信誉好的不错
  • Solon AI 开发学习16 - generate - 生成模型(图、音、视)
  • 2025年中国五大商用音乐授权平台推荐:猴子音悦的市场口碑如
  • NOIP2025 寄
  • 2025年比较好的年轻人家具/现代家具品牌厂家排行榜
  • 短视频开发,js判断文件名是否合法 - 云豹科技
  • 2025年热门的20吨地磅实力厂家TOP推荐榜
  • 2025年口碑好的SMC比例阀/FD7B25ADM比例阀厂家最新权威实力榜
  • 2025年比较好的安全网篷布设备用户好评厂家排行
  • 成都恒利泰HT-LFCG-1800+
  • 从爱好者到专家:机器人抓取技术的科研之路
  • 2025年靠谱的处理压滤机高评价厂家推荐榜
  • 2025年五大保密柜专业制造商推荐,保密柜供应商推荐与保密柜
  • 2025年中国音乐版权服务平台口碑排名:猴子音悦实力出众
  • Solon AI 开发学习15 - chat - 拦截器
  • 2025年质量好的单螺旋挤浆机行业内知名厂家排行榜
  • 2025年比较好的燃木真火壁炉厂家最新实力排行
  • .Net使用AgentFramework进行多Agent工作流编排-智能体AI开发
  • chrome: 关闭图片的显示
  • 2026 年广西 PET/KET 备考观察:考生家长的现实挑战与专业应对路径
  • 2025年靠谱的家具滑轨TOP实力厂家推荐榜
  • 2025年热门的防裂护手霜厂家推荐及采购指南