微信社交小程序服务器,Day12-微信小程序实战-交友小程序-搭建服务器与上传文件到后端...
要搞一个小型的cms内容发布系统
因为小程序上线之后,直接对数据库进行操作的话,慧出问题的,所以一般都会做一个管理系统,让工作人员通过这个管理系统来对这个数据库进行增删改查
微信小程序其实给我们提供了这样的能力了
(也就是可以在自己已有的服务器来进行云操作,所以就可以通过这个CMS内容管理系统来对云数据库进行修改)
我们就要建立自己的web服务器--》搭建一个简易的服务器
https://koa.bootcss.com/
这个是要node版本是7以上,可以在node官网去搭建,我这边之前按照过了,直接cmd打开,通过 node -v查看版本
然后还要下载一个 cnpm,这个主要是下载第三方模块用的
https://www.cnblogs.com/biglovevolcaner/p/6707746.html
打开cmd,直接输入这位大佬博客里面的语句进行安装即可了
这些都准备好了之后,就可以开始koa2的服务器搭建了
我们选择koa的脚手架 koa-generator
https://blog.csdn.net/sinat_39049092/article/details/104575018
(跟这个博客到第三步就行)
然后我们就可以到想要搭建系统的文件中(我在d盘新建了一个weapp文件)
在cmd中输入 D:\weapp 之后输入 d:即可跳转
输入 koa2 miaomiao-cms -e
(后面的-e表示的是选择ejs模板)
然后安装提示,我们进入到这个建立的东西 cd miaomiao-cms
然后安装一些初始的模块
输入 cnpm i
创立完之后,就可以去启动了,我们通过 npm start
启动好之后,我们在网页中 输入 localhost:3000
如果看到了这个界面的话,说明web服务器就已经搭建好了,就可以在这个web服务器下做一个简易的cms系统了
之后就可以在d盘找到这个文件了
其中的public主要是放一些静态资源的
在vscode里面打开我们的文件
这个index其实就是类似于可以在前端显示的
实现引入 axios.min.js 可以通过npm安装,也可以使用网上开源的
通过设置:
EJS Welcome to
上传图片 :
我们可以看到
注意:假如网页打不开,或者是没更新出现的html结构的话,就重新的在这个miaomiao.cms下面 npm start重新打开
随便选一张图片,onchange就是只要选择了图片的话,就会触发这个事件了,file就是拿到的我们上传的文件了
拿到这个图片要怎么传输给后台呢,这个时候就要进行文件操作了FormData这个对象来实现了
通过append 给这个param对象添加一个key为file value为 。也就是通过这个append来产生一个键值对
然后把这个对象通过axios来传输到后端
这就是axios中传输给后端文件的代码
在传输之前,先对 config 配置文件 进行设置,告诉我们后端这个是一个文件数据流
配置好了之后,就可以通过post把图片传输给后台的接口 uploadBannerImg
通过下面的代码
与你相遇-CMS管理系统
上传图片 :
varuploadBtn=document.getElementById('uploadBtn');
uploadBtn.οnchange= function(ev){varfile=ev.target.files[0];varparam= newFormData();
param.append('file', file);varconfig={
headers : {'Content-Type':'multipart/form-data'}
};
axios.post('/uploadBannerImg', param , config).then((res)=>{
console.log( res.data );
});
};
然后就是开始搞 定义 uploadBannerImg 这个接口了
在routes-》index.js里面,添加上这个代码
router.post('/uploadBannerImg' , async(ctx , next)=>{var files =ctx.request.files;
console.log( files );
})
我们添加一个图片,然后可以看到在后端中
会发现404了,我们再通过 npm start来开启
先要结束上面的操作,通过 ctrl+c 弹出
然后输入y之后,通过npm start,然后再次上传图片
打印出来了这个,说明file为undefined 也就是没拿到这个图片了
这个是因为koa默认是得不到我们上传文件的东西的,还需要下载一个第三方的模块来辅助完成这个功能才行
通过在miaomiao-cms目录下的cmd 输入 cnpm i -S koa-body
下载好了之后,在app.js里面,引入koa-body
const koaBody = require('koa-body')
然后在app.js里面做一个简单的配置
app.use(koaBody({
multipart :true,//指定是否可以上传多张
formidable : {
maxFileSize :200*1024*1024 //设置上传文件大小最大限制,默认2M
}
}))
(不配置这个,用默认的也是可以的)
搞好之后,再把项目 npm start启动一下
上传图片之后,还是显示 undefined
原因就是index.js里面的files少了一个s
这里的use多了一个r
把这两个代码书写错误改好了之后,再上传就可以看到结果了
所以就实现了把图片传给后台了,然后我们就要把这个信息传给云平台了(以上完成了前台的文件传输到了后台)
微信社交小程序服务器,Day12-微信小程序实战-交友小程序-搭建服务器与上传文件到后端...相关推荐
- SpringBoot上传文件到 后端服务器 或 云服务器(七牛云、阿里云、腾讯云等等都是一样的操作步骤)
文章目录 一.新建SpringBoot项目 1.pom.xml 2.application.yml 3.配置Swagger3 4.统一返回类Result 5.统一异常响应ErrorCode 二.上传文 ...
- 上传文件到服务器并显示,J2EE如何实现Servlet上传文件到服务器并相应显示功能...
J2EE如何实现Servlet上传文件到服务器并相应显示功能 发布时间:2021-07-10 11:44:54 来源:亿速云 阅读:82 作者:小新 这篇文章将为大家详细讲解有关J2EE如何实现Ser ...
- php上传手机文件到服务器,安卓上传文件至PHP服务器(示例代码)
前两个月有幸参加一次免费培训,开发了一款小软件.发现AsyncHttpClient还真是好用. 直奔主题,安卓上传文件至PHP服务器: 1.PHP端服务器: //链接数据库 include (&quo ...
- 云服务器上传文件到阿里云盘
笔者服务器环境:centos7.8 注:需要下载阿里云盘cli程序,如果是服务器是Windows环境,直接网页打开阿里云盘然后上传文件即可,其他的Linux环境,命令行内用wget工具下载 命令行程序 ...
- ftp 上传文件夹_命令行连接FTP服务器
Windows下: 打开命令行窗口,输入 ftp,进入ftp命令模式: 输入 open ip地址 端口,进入ftp服务器,如open 172.16.3.77 2121.如下图: 输入Windows下的 ...
- mac SCp上传文件到阿里云服务器centos
1.mac链接远程阿里云服务器centos命令: ssh -A -p 22 root@ip 2.mac上传文件到阿里云centos: 3.阿里云服务器weapps下文件删除命令: 4.上传文件相关 m ...
- 微信小程序上传文件到自己的服务器
微信小程序上传文件到自己的服务器 1.建立 WebApi项目 (1)创建项目 (2)发布项目 2.后端接口代码 3.小程序端调接口 1.建立 WebApi项目 (1)创建项目 选择菜单 "文 ...
- 微信小程序实现上传文件 如图片/word excel到服务器
说道上传文件,首先要想到微信官方文档给的API,wx.uploadFile({ }) 通过这个API来达到上传至服务器的效果:代码示例如下 接下来我们先来说说上传图片功能,这个比较简单一些 上传图片: ...
- Django搭建服务器,和微信小程序通信,验证码存入redis,用户信息存入mysql以及图片上传
写在前面:整体是实现小程序的登录和注册,并接收验证码进行校验. 一.创建项目 django-admin startproject wxTest 二.注册app,进入到wxTest目录中 python ...
最新文章
- 使用urllib2简单爬取并保存内涵吧内涵段子指定分页的的描述信息
- 【译】A Beginner-Friendly Introduction to Containers, VMs and Docker
- Python10分钟入门
- 判断字符为空_49. 把字符串转换成整数(剑指offer)
- Scala与Java差异(六)之类定义
- 华北水利水电C 语言实验11,华北水利水电大学C语言实验11.doc
- 【linux】使用swap文件恢复非正常关闭的文件
- 二月十大病毒排行 加花加密最危险
- 【iCore4 双核心板_uC/OS-II】例程一:认识 uC/OS-II
- Scala: 简介和安装
- 【CSS】 CSS基础知识 属性和选择
- CCNA的计分方法(转)
- hunnu 10246 最大间隙问题 桶排序+抽屉原理
- windows2016服务器优化,Windows server 2016系统基本优化设置
- Unity 删除物体
- TXT文本大数据手机号码归属地批量归类查询处理工具
- 《Total Commander:万能文件管理器》——第7.3节.总结与作业
- Python进行图片文字识别(表格图片)(使用阿里OCR接口)
- unity 手机游戏优化(场景篇)
- Oracle EBS 名词解释
热门文章
- keras 多层lstm_机器学习100天-Day2403 循环神经网络RNN(训练多层RNN)
- CSS浏览器兼容性问题
- 如何在客户端终止一个已经发出的HTTP请求
- 产品经理实战:电商平台是如何扣库存的?
- 谈谈实习期间应该注意的几点问题,助你早日拿到转正offer
- 栈计算机术语,计算机数据结构词汇中英对照
- oracle 回滚空间查询,oracle回滚段和回滚表空间操作
- python sys干嘛的_Python之sys模块
- 新建maven写页面_使用 IDEA 创建 Maven Web 项目 (三)- 编写一个简单的 WEB 应用
- mysql 快照能否恢复某个表_mysql全库备份恢复某个表