详解vue中使用express+fetch获取本地json文件


Posted in Javascript onOctober 10, 2017

自己在做个vue小demo的时候,想模拟从服务器获取json数据的过程,一开始的想法是使用fetch直接获取本地的json文件,无论是install了json-loader还是把json文件放在index.html的目录下或webpck.config.js里output的目录下,但是fetch一直报找不到文件。然后决定用fetch向express服务器发送请求,由服务器返回json数据。

express服务器

先写一个简单的express服务器,只有一个接口,起到示例作用就行了。back.js如下:

var express = require('express')
var app = express();
var allowCrossDomain = function(req, res, next) {//设置response头部的中间件
res.header('Access-Control-Allow-Origin', 'http://localhost:8089');//8089是vue项目的端口,这里相对于白名单
res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
res.header('Access-Control-Allow-Headers', 'Content-Type');
res.header('Access-Control-Allow-Credentials','true');
next();
};
app.use(allowCrossDomain);
app.get("/api/data",function (request,response) {
var data = require('./grid.json');//要获取的json文件
response.send(data);
})
app.listen('3000',function () {
console.log('>listening on 3000')
});

然后使用命令node back.js就可以运行这个服务了。

fetch获取json数据

用语接受请求的服务器已经运行起来了,接下来就是使用fetch来发送请求了,如下代码段就可以完成请求功能:

fetch( "http://localhost:3000/api/data")
.then(res=>res.json())
.then(data=>console.log(data))
.catch(function (e) {
console.log('oops! error:',e.message)
})

此时就可以顺利获取想要的json数据了

详解vue中使用express+fetch获取本地json文件

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
innerHTML 和 getElementsByName 在IE下面的bug 的解决
Apr 09 Javascript
原来Jquery.load的方法可以一直load下去
Mar 28 Javascript
用js判断页面刷新或关闭的方法(onbeforeunload与onunload事件)
Jun 22 Javascript
JQuery菜单效果的两个实例讲解(3)
Sep 17 Javascript
JavaScript编写页面半透明遮罩效果的简单示例
May 09 Javascript
jQuery子元素过滤选择器用法示例
Sep 09 Javascript
AngularJS定时器的使用与移除操作方法【interval与timeout】
Dec 14 Javascript
Node.js 8 中的重要新特性
Jun 28 Javascript
详解利用Angular实现多团队模块化SPA开发框架
Nov 27 Javascript
vue非父子组件通信问题及解决方法
Jun 11 Javascript
Vue利用localStorage本地缓存使页面刷新验证码不清零功能的实现
Sep 04 Javascript
JS数组方法some、every和find的使用详情
Oct 05 Javascript
vue router自动判断左右翻页转场动画效果
Oct 10 #Javascript
angular2 ng2 @input和@output理解及示例
Oct 10 #Javascript
ionic选择多张图片上传的示例代码
Oct 10 #Javascript
详解ionic本地相册、拍照、裁剪、上传(单图完全版)
Oct 10 #Javascript
防止页面url缓存中ajax中post请求的处理方法
Oct 10 #Javascript
Vue实现数字输入框中分割手机号码的示例
Oct 10 #Javascript
JS判断数组那点事
Oct 10 #Javascript
You might like
2020年4月放送决定!第2期TV动画《邪神酱飞踢》视觉图&主题曲情报公开!
2020/03/06 日漫
学习php设计模式 php实现享元模式(flyweight)
2015/12/07 PHP
Laravel 5.3 学习笔记之 配置
2016/08/28 PHP
thinkphp在php7环境下提示Cannot use ‘String’ as class name as it is reserved的解决方法
2016/09/30 PHP
[Web]防止用户复制页面内容和另存页面的方法
2009/02/06 Javascript
JS辨别访问浏览器判断是android还是ios系统
2014/08/19 Javascript
javascript 实现map集合
2015/04/03 Javascript
牛叉的Jquery——Jquery与DOM对象的互相转换及DOM的三种操作
2015/10/29 Javascript
js性能优化技巧
2015/11/29 Javascript
AngularJS自动表单验证
2016/02/01 Javascript
javascript中JSON.parse()与eval()解析json的区别
2016/05/19 Javascript
canvas简单快速的实现知乎登录页背景效果
2017/05/08 Javascript
JavaScript实现树的遍历算法示例【广度优先与深度优先】
2017/10/26 Javascript
基于react后端渲染模板引擎noox发布使用
2018/01/11 Javascript
关于vue状态过渡transition不起作用的原因解决
2019/04/09 Javascript
vue中使用 pako.js 解密 gzip加密字符串的方法
2019/06/10 Javascript
微信小程序实现多图上传
2020/06/19 Javascript
写一个Vue loading 插件
2020/11/09 Javascript
Pycharm简单使用教程(入门小结)
2019/07/04 Python
简单介绍python封装的基本知识
2019/08/10 Python
Python实现滑动平均(Moving Average)的例子
2019/08/24 Python
Python实现RabbitMQ6种消息模型的示例代码
2020/03/30 Python
python TCP包注入方式
2020/05/05 Python
Python3爬虫关于识别检验滑动验证码的实例
2020/07/30 Python
详解Python中如何将数据存储为json格式的文件
2020/11/18 Python
Python 获取异常(Exception)信息的几种方法
2020/12/29 Python
JRE、JDK、JVM之间的关系怎样
2012/05/16 面试题
金融管理专业毕业生求职信
2014/03/12 职场文书
幼儿园开学寄语
2014/04/03 职场文书
乡镇防汛工作汇报
2014/10/28 职场文书
2015年感恩母亲节活动方案
2015/05/04 职场文书
2015年电教工作总结
2015/05/26 职场文书
初中班级口号霸气押韵
2015/12/24 职场文书
python如何获取网络数据
2021/04/11 Python
Python机器学习之决策树和随机森林
2021/07/15 Javascript
《艾尔登法环》发布最新「战技」宣传片
2022/04/03 其他游戏