jQuery ajax读取本地json文件_jQuery请求本地JSON文件,在谷歌浏览器运行时报跨域错误_Vscode使用Live Server

json文件

{"first":[{"name":"张三","sex":"男"},{"name":"李四","sex":"男"},{"name":"王武","sex":"男"},{"name":"李梅","sex":"女"}]
}

js

方法一:

$.ajax({url: "ceshi.json",//json文件位置type: "GET",//请求方式为getdataType: "json", //返回数据格式为jsonsuccess: function(data) {//请求成功完成后要执行的方法 //each循环 使用$.each方法遍历返回的数据date$.each(data.first, function(i, item) {var str = '<div>姓名:' + item.name + '性别:' + item.sex + '</div>';document.write(str);})}
})

方法二:

jQuery.getJSON()是jQuery.ajax()函数的简写形式.

// jQuery.getJSON( url [, data ] [, success ] )
$.getJSON("ceshi.json", "", function(data) {//each循环 使用$.each方法遍历返回的数据date$.each(data.first, function(i, item) {var str = '<div>姓名:' + item.name + '性别:' + item.sex + '</div>';document.write(str);})
});

jQuery请求本地JSON文件,在谷歌浏览器运行时报跨域错误

通过ajax或者jQuery的$.getJSON请求本地JSON文件,运行在谷歌浏览器时,会报跨域的错误

注:火狐浏览器也会提示错误,但会显示要获取的信息

原因:

访问本地计算机中的文件,使用的是file协议。file协议主要用于访问本地计算机中的文件。

跨源请求只支持协议模式:http、data、chrome、chrome-extension、https

安全原因浏览器不允许跨域访问,安全机制认为加载本地其他文件是跨域行为。谷歌浏览器会报跨域的错误,是由于谷歌浏览器的安全机制不允许

报错:
在这里插入图片描述
解决方式:

1.使用jsonP

2.根据网上查找有推荐使用webStorm的(没试过)

3.vscode安装使用扩展live-server

注:其它网上方式没试过(eg:反向代理,改谷歌浏览器设置之类的)

注:live Server扩展,安装好后,选择html文件,右击选择Open with Live Server
在这里插入图片描述

【Vscode插件】LiveServer 安装使用指南

当我们碰到文件引入导致的跨域问题,而测试环境又不存在不同源时,live-server这个插件允许我们起一个前端本地服务,这样子就把资源和网站服务同源了

img

1.左键点击下图圈出的图标或者快捷键Ctrl+Shift+X,到下图的EXTENSIONS界面。

img

2.搜索Live Server点击绿色的Install即可安装,笔者是已经装好了所以才没有Install按钮的。

img

3.安装成功的表示是如下图所示,右键HTML文件有Open with Live Server选项(如果没有这个选项的话,重新开一次VSC,再次导入工程所在文件夹即可)。

img

4.出现右下角5500的默认端口号提示即表示启动完毕。

img

5.在浏览器输入网址:http://127.0.0.1:5500/显示HTML内容。

img

到这一步,Live Server就成功安装并能正常使用了!

Vscode使用Live Server

先安装live Server:
在这里插入图片描述

然后使用 CTRL+SHIFT+P ,搜索live server:
在这里插入图片描述
点击 Open with server就可以打开这个服务器了。
如果要用这个服务器打开具体的html文件:
在这里插入图片描述

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

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

相关文章

java执行curl命令_Java执行curl命令

Java执行curl命令需要注意的是&#xff0c;命令需要以数组的形式传递参数&#xff0c;就是把正常的命令以空格切分成数组就行了。而且参数前后不能有空格&#xff0c;不然会报错。具体的测试代码如下&#xff1a;import java.io.BufferedReader;import java.io.IOException;imp…

Vue打包并发布项目

一、 打包vue项目步骤&#xff1a; 1、对当前vue项目进行打包的命令如下&#xff1a; npm run build2、打包完成&#xff0c;会输出Build complete并且在vue项目中会生成一个名字为dist的打包文件。如下图&#xff1a; 二、 使用静态服务器工具包发布打包的vue项目 1、首先…

java线程安全例子_Java总结篇系列:Java多线程(三)

本文主要接着前面多线程的两篇文章总结Java多线程中的线程安全问题。一.一个典型的Java线程安全例子1 public classThreadTest {23 public static voidmain(String[] args) {4 Account account new Account("123456", 1000);5 DrawMoneyRunnable drawMoneyRunnable …

Grammarly:最优秀的日常英文写作辅助工具——论文英文校验

使用Grammarly也有一些心得&#xff0c;在此分享给大家。 1&#xff0c;Grammarly是什么&#xff1f; Grammarly是一款在线语法纠正和校对工具&#xff0c;支持Windows、Mac、iOS和Android等多个平台。它能够检查单词拼写、纠正标点符号、修正语法错误、调整语气以及给出风格…

Spring如何将@RestController的对象自动转换为json_@ResponseBody 注解原理

我正在看一段代码&#xff0c;其中我假设spring决定在幕后使用Jackson为RestController自动将对象转换为json RestController RequestMapping("/api") public class ApiController {private RoomServices roomServices;Autowiredpublic ApiController(RoomServices…

jetty java web_i-jetty 下的JavaWeb开发(一)

最近需要将android端作为服务器进行开发&#xff0c;让android作为服务器&#xff0c;现阶段技术并不是很成熟&#xff0c;主要的服务器有i-jetty&#xff0c;是基于PC端的jetty的移植。i-jetty同tomcat类似&#xff0c;也是Servlet的容器&#xff0c;但是i-jetty需要使用andro…

SpringMVC @RequestBody和@ResponseBody原理解析

SpringMVC RequestBody和ResponseBody原理解析 前言 RequestBody作用是将http请求解析为对应的对象。例如&#xff1a; http请求的参数&#xff08;application/json格式&#xff09;&#xff1a; {"accountId": 10,"adGroupId": "12345678",…

java 高性能缓存_高性能Java缓存----Caffeine

简单介绍Caffeine是新出现的一个高性能的Java缓存&#xff0c;有了它完全可以代替Guava Cache&#xff0c;来实现更加高效的缓存&#xff1b;Caffeine采用了W-TinyLFU回收策略&#xff0c;集合了LRU和LFU的优点&#xff0c;提供了一个最佳的命中率&#xff0c;在效率上可以秒杀…

@ResponseBody 转化成json后与实体类字段名不一致_SpringMVC字符串解析成json对象(@RequestBody注解和@ResponseBody注解)

ResponseBody 转化成json后与实体类字段名不一致 实体类A字段名由B改成C后&#xff0c;Controller 中返回的List中字段名仍然是C 经过ResponseBody返回到前台后又变成了B 后来发现公司项目采用的是阿里的fastjson&#xff0c; 是开源的Json格式化工具库 此工具库是根据实体类…

java togglebutton_ToggleButton和Switch使用大全

本文转载自&#xff1a;Android零基础入门第21节&#xff1a;ToggleButton和Switch使用大全http://www.apkbus.com/blog-205190-68463.html(出处: 安卓巴士 - 安卓开发 - Android开发 - 安卓 - 移动互联网门户)&#xff0c;转载应备注出处&#xff0c;尊重原创上期学习了CheckB…

Jackson,实现Bean和JSON之间的灵活转换(SpringMVC默认的JSON转换器)

Jackson介绍 Jackson是Java最受欢迎的JSON类库之一&#xff0c;包含两个不同的解析器&#xff1a; Jackson ObjectMapper&#xff0c;将JSON转化为Java对象&#xff0c;或者转换为Jackson特定的树结构Jackson JsonParser&#xff0c;JSON流解析器&#xff0c;每次只解析一个J…

MyBatis之工作原理,简单实体的增加、修改、删除、查询_Mybatis-原理总结

一、MyBatis之工作原理 MyBatis是一个半自动映射框架。所谓半自动&#xff0c;是相对Hibernate全表映射而言的&#xff0c;MyBatis需要手动匹配提供POJO、SQL和映射关系。 我们知道&#xff0c;JDBC有四个核心对象&#xff1a; &#xff08;1&#xff09;DriverManager&#…

MySQL优化:如何避免回表查询?_什么是索引覆盖?

数据库表结构&#xff1a; create table user (id int primary key,name varchar(20),sex varchar(5),index(name) )engineinnodb;select id,name where nameshenjianselect id,name,sex where nameshenjian多查询了一个属性&#xff0c;为何检索过程完全不同&#xff1f; 什…

mysql提示Column count doesn‘t match value count at row 1错误

我们在对数据库进行添加信息时可能会遇到如下错误&#xff1a; Column count doesn’t match value count at row 1 该错误的意思是传入表的字段数和values值的个数不一样 我总结了一下&#xff0c;主要有3个易错点&#xff1a; 1.要传入表中的字段数和values后面的值的个数不…

java 阅发布模式_redis发布订阅模式

一 前言虽然有消息队列&#xff0c;我们还是要了解一下redis发布订阅模式哟&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;二发布订阅模式PUBLISH 命令向通道发送信息&#xff0c;此客户端称为publisher 发布者&#xff1b;SUBSCRIBE 向命令通道订阅信息&#…

把实体 转为json 数据格式---jackson 的详细用法_Jackson快速入门

首先介绍三个注解&#xff1a; JsonAutoDetect (method/field):作用于方法或字段&#xff0c;用来表明&#xff0c;当生成json的时候忽略有该annotation的方法或字段 JsonIgnore 过滤不需要转成json的属性 JsonIgnoreProperties 主要用于过滤掉一些不需要的属性 以上三个注…

python 猴子补丁_python面试题精讲——monkey patch(猴子补丁)

前言本次依然是选自python面试题系列&#xff0c;将一个比较偏的概念&#xff0c;可能很多人没怎么听说过——猴子补丁&#xff0c;其实所讲的内容很简单&#xff0c;它得益于python灵活的语法、一切皆对象的思想&#xff0c;一起来看看看看吧&#xff01;目录一、什么是monkey…

java 类的加载顺序_Java 中类的加载顺序

这其实是去年校招时我遇到的一道阿里巴巴的笔试题(承认有点久远了-。-)&#xff0c;嗯&#xff0c;如果我没记错的话&#xff0c;当时是作为Java方向的一道选做大题。当然题意没有这么直白&#xff0c;题目只要求你写出程序运行后所有System.out.println的输出结果&#xff0c;…

Jackson转换json大写_关于jackson转化json的原理_jackson序列化和反序列化Json

背景 web工程中&#xff0c;数据交互是不可避免的&#xff0c;相比xml&#xff0c;json是现在流行的数据交互。 在调试接口中&#xff0c;发现返回字段的大小写不是我所期望的&#xff0c;原本应该返回的nNum字段变成了nnum&#xff0c;这样就导致和前端约定的有出入了。 ja…

groovy+mysql数据库_使用Groovy连接到MySQL

我正在尝试使用MAC OS 10.10.5 Yosemite上的以下Groovy代码连接到MySQL数据库import groovy.sql.Sqltry{def dbURL jdbc:mysql://localhost:3306/sakiladef dbUserName rootdef dbPassword Orange27def dbDriver com.mysql.jdbc.Driverlog.info(Good)def db Sql.newInstan…