nodejs+vue+element+eachers构建开源项目大型连续剧(1)搭建nodejs服务器

news2024/11/25 18:58:47

         在前端开发过程中,可能某些时候需要自己搭建一台服务器用于一些文件图片请求或者进行后端相关知识的学习。本文主要讲解如何通过nodejs进行一个基础服务器的搭建,包括如何将文件布置的服务器,以及基础接口的开发。后面可能会更新关于通过nodejs操作数据库,以及项目相关接口的开发。可能做一个简单的项目进行分享。当然,本文还是一些基础的东西,不过是手把手教学,还不抓紧卷起来。

一、第一步:新建文件夹(自己建)

二、通过npm init初始化配置文件

运行npm init 初始化项目生成package.json文件(项目描述文件, 里面记录了当前项目的信息。例如:项目的开发依赖包、项目的相关命令等)。运行npm init后会让你进行一些配置,我们直接一直回车,默认进行了,然后就成功完成了第一步

三、通过npm安装所需要的第三方依赖包

npm add express  

express 用于快速搭建服务器,属于对于nodejs中http模块的进一步封装。用于快速搭建服务器。

npm add nodemon

用于更改代码保存后的自动更新 

四、搭建一个基础服务器

//导入express
const express = require('express')
//创建web服务器
const app=express()
// 通过ap.listen进行服务器的配置,并启动服务器,接收两个配置参数,一个是对应的端口号,一个是启动成功的回调函数
app.listen(9588,()=>{
    console.log('服务器启动成功');
})

通过(node 文件名)启动服务器  node .\app.js 这样我们就得到了一个简单的服务器,但更改代码后需要手动更新。

建议通过nodemon启动项目 npx nodemon .\app.js

五、如何将文件布置到服务器

通过express.static('文件名') 将文件部署到服务器

新建img文件夹里面存放对应想要部署的文件

app.use(express.static('img'))

查看电脑ip 通过黑窗口运行ipconfig/all命令查看电脑ip

然后就可以了通过http:电脑ip/文件名就可以访问了

每个人的电脑ip都不一样哈

六、服务器接口的开发

 get接口的开发

//导入express
const express = require('express')
//创建web服务器
const app=express()
//将文件部署到服务器
app.use(express.static('img'))
// 通过ap.listen进行服务器的配置,并启动服务器,接收两个配置参数,一个是对应的端口号,一个是启动成功的回调函数
//get接口的开发
app.get('/api/list',(err,res)=>{
    res.send({
        code:200,
        data:[{name:1},{name:2},{name:3}]
    })
})
app.listen(9588,()=>{
    console.log('服务器启动成功');
})

随便写的假数据,按理说应该是查询数据库进行数据的返回的,本文主要进行一些简单的案例,关于复杂的以及数据库的操作,下次再说。

 经测试,是可以请求成功的。

post接口的开发

//导入express
const express = require('express')
//创建web服务器
const app=express()
//将文件部署到服务器
app.use(express.static('img'))
//配置解析表单数据(application/x-www-form-urlencoded)格式的中间件
app.use(express.urlencoded({extended:false}))
// 通过ap.listen进行服务器的配置,并启动服务器,接收两个配置参数,一个是对应的端口号,一个是启动成功的回调函数
//get接口的开发
app.get('/api/list',(err,res)=>{
    res.send({
        code:200,
        data:[{name:1},{name:2},{name:3}]
    })
})
//post接口的开发
app.post('/api/setList',(req,res)=>{
    const newList = req.body
    console.log(newList);
    res.send({newList})
})
app.listen(9588,()=>{
    console.log('服务器启动成功');
})

然后就完成了post接口的开发

七、总结

        是不是感觉有知识但不多,无用的知识增加了。后面可能弄一个项目进行整体的说明,可以期待下。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/86466.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

从根源帮助改变数据延误, Qlik 辅助金融行业实现信贷渠道预测

信贷行业面临的业务挑战 传统方式下,营利性增长和正确管理信贷组合风险的能力是通过静态报告和电子表格完成的,不仅数据单独进行汇总,同时交付过程也存在延迟。这种情况导致组织不得不基于不完整的信息来制定关键的信贷和定价决策。信贷员需…

研发中台拆分过程的一些心得总结

背景在 21 年,中台拆分在 21 年,以下为中台拆分的过程心得,带有一定的主观,偏向于中小团队中台建设参考(这里的中小团队指 3-100 人的团队),对于大型团队不太适用,毕竟大型团队人中 …

Elasticsearch8系列【2】Windows环境安装ES8

有道无术,术尚可求,有术无道,止于术。 文章目录前言Windows安装Elasticsearch8.5.21. 下载2. 获取密码3. 注册服务4. 登录安装可视化工具前言 Elasticsearch使用Java语言开发,在安装之前需要安装JDK环境。基本支持所有主流操作系统…

Kioptrix Level2靶机

0x01信息收集 nmap -sV -O 10.121.65.83 0x02 万能密码&&命令执行 访问80端口(经测试 443端口并没有办法访问) 登录框尝试弱口令和sql注入 发现存在万能密码 admin# 存在一个ping命令,尝试通过管道符看是否会执行命令 127.0.0.0|id 存在命令执行漏洞&am…

network判断是否瓶颈

首先判断连接是否建立: tcp主机a->主机b的请求连接命令,半连接队列在主机b 判断半连接队列命令 netstat -s |grep -i listen 值过大,半连接队列无法建立 2.tcp主机a收到主机b的回复,主机a->主机b的连接请求,全…

成才之路杂志社成才之路编辑部成才之路杂志2022年第33期目录

高教与成才研究《成才之路》投稿:cn7kantougao163.com 融媒体时代大学生职业发展与就业指导课程体系建设研究 张效良;李玉波; 1-4 “三全育人”背景下高职辅导员思政教育方法研究 杨春蕊; 5-8 “五育”学生管理模式对高校思政教育的影响研究 张晓英; 9-…

基数排序python

一、基数排序介绍 基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,…

【Windows逆向】Windows进程动态patch入门+pyqt5搭建GUI

目标 希望学习对Windows进程的动态patch,我们选择的exe是buuoj的“不一样的flag”。这题是迷宫题的hello world,没有加壳,没有任何代码混淆,且可以把它当成一个超小型的游戏,有助于提升信心。 为了直观,以…

【学习笔记】SAP固定资产的减值功能

SAP固定资产的减值功能 若固定资产出现减值迹象,也就是固定资产的可收回金额小于账面价值时,就要计提固定资产减值准备。 分录: 借:资产减值损失(损益科目) 贷:固定资产减值准备(资…

软件测试 | APP测试 —— Appium 的环境搭建及工具安装教程

推荐阅读: [内部资源] 想拿年薪30W的软件测试人员,这份资料必须领取~ Python自动化测试全栈性能测试全栈,挑战年薪40W 从功能测试进阶自动化测试,熬夜7天整理出这一份超全学习指南【附网盘资源】 大家应该都有同一种感觉&…

传奇怎么设置GM帐号GM命令

传奇怎么设置GM帐号GM命令 我们先创建账号进入游戏 进入到服务器里面打开我的电脑 计算机D:\Mirserver\Mir200\Envir打开AdminList.txt文件 退出保存文本,小退一下游戏再次进入就是GM号了 方法二:在任务栏找到M2Server 点击查看-----列表信息一 保存后我…

微服务框架 SpringCloud微服务架构 分布式事务 38 动手实践 38.6 TCC 模式原理

微服务框架 【SpringCloudRabbitMQDockerRedis搜索分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】 分布式事务 文章目录微服务框架分布式事务38 动手实践38.6 TCC 模式原理38.6.1 TCC 模式原理38.6.2 举个栗子38.6.3 工作流程38.6.4 总结38 …

TensoRT—— buffers管理(samplesCommon::BufferManager)

BufferManager类处理主机和设备buffer分配和释放。 这个RAII类处理主机和设备buffer的分配和释放、主机和设备buffers之间的memcpy以帮助inference,以及debugging dumps以验证inference。BufferManager类用于简化buffer管理以及buffer和 engine之间的交互。 代码位…

web前端网页制作课作业:校园科技节活动网站 (纯HTML+CSS布局制作)

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

cleanmymac x免费版安装包下载使用教程

我这台用了7年的MacBook Air ,硬盘容量只有 128G ,用段时间就会被系统提醒「您的磁盘几乎已满」,并且变得有点卡顿。这时,清理一下垃圾,腾出更多储存空间,就能让它满血复活。 这个时候我们可以用 CleanMyM…

Kafka系列之:使用kafka manager增加topic分区和副本

Kafka系列之:使用kafka manager增加topic分区和副本) 一、相关技术博客二、增加分区三、增加副本一、相关技术博客 Kafka系列之:实现kafka topic优先副本的选举Kafka系列之:使用Kafka Manager实现leader分区平衡和broker节点上分区平衡二、增加分区 增加分区: 增加完分区…

Adobe Acrobat 图标异常的解决办法

今天使用 Adobe Acrobat 打开文件阅读时,发现底部任务栏的图标是这样的,如下图所示。 这可不是常见的 Adobe Acrobat 图标,肯定是哪里出了问题,于是我在电脑开始这里找到 Adobe Acrobat 的快捷方式,其图标也是这样的&…

Android Binder 通信一次拷贝的原理

前言 对于 Android 开发者来说 Binder 应该不会陌生了,Binder 是 Android 提供的 IPC 通信机制,它是通过内存映射实现的,而这也是 Binder 相对于其他传统进程间通信方式的优点之一,即我们说的 Binder 只需要做“一次拷贝”&#…

基于springboot高校闲置物品交易系统微信小程序源码和论文

基于springboot二手物品交易系统微信小程序 互联网的兴起从本质上改变了整个社会的商品交易方式,国内各大企业从上个世纪 90 年代互联网兴起之时,就产生了通过网络进行销售经营商品的想法。但是由于在互网上企业的信誉难以认证、网络的法规政策不健全、物…

论文阅读|Embedding-based Retrieval in Facebook Search

该论文是facebook发表在KDD2020上的一篇关于搜索召回的paper。这篇文章提到的大多trick对于做过召回的同学比较熟悉了,可贵之处在于全面,包括了特征、样本、模型、全链路等各种细节知识。 1. 整体思路与框架 本文的出发点是搜索只做到query关键词匹配的…