读万卷书不如行万里路,必须实践出真理!

看官方文档安装项目vue init nuxt-community/starter-template <project-name>注意:这是新手项目不适合直接用的

用我用的express的官方项目vue init nuxt/express  <project-name>

大神有讲解但是没有源码https://juejin.im/post/598aabe96fb9a03c335a8dde

1.使用FormData提交文件时

上传的内容保存在Request Payload中而不是请求信息的body中

因为HTTP POST表单请求提交时,使用的Content-Type是application/x-www-form-urlencoded,而使用原生AJAX的POST请求如果不指定请求头RequestHeader,默认使用的Content-Type是text/plain;charset=UTF-8。Content-Type不是application/x-www-form-urlencoded的POST请求是不会读取请求体数据和进行相应的参数处理的

解决方案:

1、设置请求的Content-type字段为application/x-www-form-urlencoded

xhr.open("post", "/register", true);
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xhr.send(formData);

此时在后台可以获取到req.body中的数据。

2、使用express的中间件connect-multiparty ,它是专门处理此类post数据相关的依赖包。
安装依赖以后在服务器端使用:

var multipart = require('connect-multiparty');

var multipartMiddleware = multipart();
app.post('/register', multipartMiddleware, function(req, res) {
console.log('get FormData Params: ', req.body);
});

参考地址:https://www.jianshu.com/p/39178bc6a833

但是增加了

xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");后后台nodereq.body有值
但是var form = new formidable.IncomingForm();
form.parse(req, function(err, fields, files) {}
就不会执行了所以不能加 -----------------------------------------------
上线问题在本地打包npm run build是没有问题的
但是到线上虚拟机上打包就有问题了
一直给我报

npm ERR! code ELIFECYCLE
npm ERR! errno 137
npm ERR! nuxttest1@1.0.0 build: `nuxt build && backpack build`
npm ERR! Exit status 137

这个问题是因为内存不足导致

加上管理员权限 sudo npm run build网上说可以获得更多的内存吧好像

但是我一直报 sudo npm command not found

chmod -R 755 /opt/node
sudo ln -s /{自己的路径}/node /usr/bin/node
sudo ln -s /opt/node/lib/node /usr/lib/node
sudo ln -s /opt/node/bin/npm /usr/bin/npm
这样获取后就可以sudo了
但是我的虚拟机实在太差了所以还是不行,只能本地打包后再丢上去虚拟机跑了 nuxt.js源代码如果不想放在服务器上,可以删除除了.nuxt, build, node_modules文件夹和package.json文件的其他文件和文件夹,但是每次发布build和.nuxt两个文件夹和package.json文件需要进行更新,如有依赖包更新,直接运行更新依赖包命令就可以了

另外默认的服务是host在127.0.0.1本机上,在部分服务器上,如云服务器使用虚拟ip的服务器上,localhost和127.0.0.1都可以访问,但是使用内网的ip无法访问,这也直接导致了服务器外网即使端口开启了,也没有办法访问站点,需要更改server/index.js的host配置,去掉host参数

然后重新编译运行,发布就可以了。

nuxt.js还在发展阶段,很期待即将到来的1.0的版本,其实现在线上的项目已经开始使用了,如果觉得不错,那么试一试吧,用得人多了,发展也就更快了!

chmod xxx < file-name > 经常要用改目录权限不然传不上 -f遍历

参考https://www.cnblogs.com/stealth7/p/7299614.html

然后用pm2来管理node进程就不需要一直开着窗口pm2 start npm --name "进程名字" -- run start

最新文章

  1. IP地址的分类——a,b,c 类是如何划分的
  2. IE11之F12 Developer Tools--DOM Explorer
  3. Linux终端乱码的解决办法
  4. Java类初始化顺序问题
  5. 应用emailAutoComplete.js来自动显示邮箱后缀列表
  6. IAR 1.3 for STM8 ST-Link无法调试 无法仿真 the debugging session could not be started
  7. 学习opencv 第六章 习题十三
  8. tomcat context标签中resource配置
  9. Windows Azure 网站 (WAWS) 和中间证书
  10. Web开发人员不要错过的60款用户界面设计工具(上)
  11. android.app.Activity 的介绍
  12. jsp上的九个隐含对象
  13. Linux如何管理目录和文件属性
  14. Studio 5000指令IN_OUT管脚实现西门子风格
  15. 【模板】快速幂&amp;取余运算
  16. 结对作业——WordCount进阶版
  17. 使用DataSource绑定一维数组时,DataTextField只需绑定空字符串
  18. Wireshark过滤总结
  19. 修复Gradle CreateProcess error=206
  20. sqlmap+tor解决ip黑名单限制

热门文章

  1. java面试题09
  2. PowerShell自动部署网站—(2)、安装.Net Framework
  3. 微信开放平台开发-授权、全网发布(PHP)
  4. 使用EA完成数据库设计
  5. JS加DOM理解
  6. Centos7.2 安装配置 Tengine(nginx)
  7. lung 分割论文
  8. [小工具] C#多线程|匿名委托传参数|测试网站压力--升级版
  9. Razor的主版页面框架
  10. girdspec实现画布