给网站写一个JSON,并远程请求。

news/2024/5/10 0:49:45/文章来源:https://blog.csdn.net/weixin_30781775/article/details/96669294

在使用json之前我们应该先了解一下什么是json?

json全称JavaScript Object Notation,即js对象简谱, 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。。

JSON可以作为一个对象或者字符串存在,前者用于解读 JSON 中的数据,后者用于通过网络传输 JSON 数据。 这不是一个大事件——JavaScript 提供一个全局的 可访问的 JSON 对象来对这两种数据进行转换。

这一点也让人注意到json并不仅限于js环境。

为了加载对象进入js程序,这个对象应包括属性名和数组索引,

先看mdn上的一个对于访问json对象的ex;

superHeroes["members"][1]["powers"][2]
  1. 首先我们有变量名 superHeroes,储存对象 。
  2. 在对象中我们想访问 members 属性,所以我们使用 ["members"]
  3. members 包含有对象数组,我们想要访问第二个元素,所以我们使用[1]
  4. 在对象内,我们想访问 powers 属性,所以我们使用 ["powers"]
  5. powers 属性是一个包含英雄技能的数组。我们想要第三个,所以我们使用[2]

注意:

  • JSON 是一种纯数据格式,它只包含属性,没有方法。
  • JSON 要求有两头的 { } 来使其合法。最安全的写法是有两边的括号,而不是一边。
  • 甚至一个错位的逗号或分号就可以导致  JSON 文件出错。您应该小心的检查您想使用的数据(虽然计算机生成的 JSON 很少出错,只要生成程序正常工作)。您可以通过像 JSONLint 的应用程序来检验 JSON。
  • JSON 可以将任何标准合法的 JSON 数据格式化保存,不只是数组和对象。比如,一个单一的字符串或者数字可以是合法的 JSON 对象。虽然不是特别有用处……
  • 不像 JavaScript 标识符可以用作属性,在 JSON 中,只有字符串才能用作属性。

做一个自己网页的json demo:

1.首先在html中添加一个标签

<div class="qianjing_say" id="say">

</div>

用于之后添加数据。

2.此时你应该想好这个标签里应该添加什么数据,把数据写入json中,我这儿就把写好的json对象写好,为方便之后的远程请求

就把它上传到github托管上,带服务器的也可以放在服务器上面。https://ceneasy.github.io/test/test.json

将文件传上github的教程,我之后我会写一篇博客详细解说。

{"squadName" : "2018年加密货币展望:将再疯狂一年","homeTown" : "各种空气币横出,币市动荡,政府严加查管代币非法集资,加密货币的未来何去何从?","third": "试试你能认出下面哪些虚拟币(滑稽.jpg)"
}

2.js程序

var header = document.getElementById("say");

定义一个变量获取id名为"say"的标签

加载json

这里使用这个名为XMLHTTPRequest的api用于远程请求

定义一个变量为即将访问的url

var requestURL = 'https://ceneasy.github.io/test/test.json';

再定义一个http请求对象

var request = new XMLHttpRequest();

现在我们需要使用 open() 函数打开一个新的请求

request.open('GET', requestURL);

 

这个函数至少含有两个参数,其它的是可选参数。对于示例我们只需要两个强制参数

  • HTTP 方法,网络连接时使用。这个示例中 GET 就可以了,因为我们只要获得简单的数据。
  • URL,用于指向请求的地址。我们使用之前保存的变量。

接下来,添加,两行代码,我们设定 responseType 为 JSON,所以服务器将知道我们想要返回一个 JSON 对象,然后发送请求 :

request.responseType = 'json';
request.send();


最后一点内容涉及相应来自服务器的返回数据,然后处理它,添加如下代码在您先前的代码下方:

request.onload = function() { var superHeroes = request.response; populateHeader(superHeroes); //调用填充数据的方法 }
接下来就是填充数据

function populateHeader(jsonObj) {
var myH1 = document.createElement('h2');   //定义创建标签的变量
myH1.setAttribute("class","as")
myH1.textContent = jsonObj['squadName'];  //填充内容进新标签中
header.appendChild(myH1);   //将新标签填入老标签中
var myH2 = document.createElement('p');
myH2.setAttribute("class","as")
myH2.textContent = jsonObj['homeTown'];
header.appendChild(myH2);
var myH3 = document.createElement('p');
myH3.setAttribute("class","as")
myH3.textContent = jsonObj['third'];
header.appendChild(myH3);

}

这也就是我们json渲染出来的效果,另外注意一点,你可以用css定义数据标签的样式。

 



转载于:https://www.cnblogs.com/ceneasy/p/10059135.html

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

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

相关文章

刷网站关键字_磐安县网站SEO外包,360优化,热门

首页 > 新闻中心发布时间&#xff1a;2020-11-18 16:36:37 导读&#xff1a;万推霸屏为您提供磐安县网站SEO外包,360优化的相关知识与详情&#xff1a; 我相信所有的优化朋友都知道&#xff0c;网站优化的目的是优化百度。做外链很多人都会采用大型和问答平台这两种方式&…

御用导航提示页面最新_seo页面怎么优化?seo页面优化有哪些方法?

seo页面怎么优化&#xff1f;seo页面优化有哪些方法&#xff1f;seo如何优化好页面以对搜索引擎友好?可实现的方式可多样化&#xff0c;效率较高的方式为找到优质网站的各类型页面模型优势&#xff0c;直接使用到自己的站点。假设某一个网站的首页关键词排名较好&#xff0c;某…

[搜索引擎研究和开发]纯手工编写操作I/O文件流的TAG网站标签系统(索引原理)...

本人喜欢钻研技术&#xff0c;两年前就已经对搜索引擎的海量数据检索兴趣甚浓&#xff0c;而.NET中的类库功能强大&#xff0c;非常方便于快速编写代码以实现自己的想法。对于全文检索引擎&#xff0c;如何能够令其在极短的时间内查找到用户所需要的数据&#xff0c;对应付大量…

初次尝试python爬虫,爬取小说网站的小说。

本次是小阿鹏&#xff0c;第一次通过python爬虫去爬一个小说网站的小说。 下面直接上菜。 1.首先我需要导入相应的包&#xff0c;这里我采用了第三方模块的架包&#xff0c;requests。requests是python实现的简单易用的HTTP库&#xff0c;使用起来比urllib简洁很多&#xff0c;…

外部样式表 div居中不起作用_网站DIV+CSS教程培训教程X(HTMLCSS基础知识)一

XHTML CSS基础知识1&#xff09;文档类型<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3。org/TR/xhtml1/DTD/xhtml1-transitional.dtd">一定要保留这句话&#xff0c;删除它后可能引起某些样式表失效或其它意想不…

html适应手机显示不全_制作手机网站的重要性

移动互联网和PC互联网互相存在的时代&#xff0c;手机网站对于企业来说也非常的重要&#xff0c;在pc互联网时代网站的结构都只适应电脑端浏览&#xff0c;一旦放在更小屏幕的手机端打开就会页面错乱&#xff0c;文字不清晰&#xff0c;图片显示不全等问题&#xff0c;严重营销…

中的nginx 修改_如何使网站支持https访问?nginx配置https证书

购买SSL证书要想使用https访问你的网址&#xff0c;首先得拥有颁发的SSL证书。我使用的是免费版&#xff0c;有效期为一年&#xff0c;过期后再重新申请。申请SSL证书购买后&#xff0c;可在搜索框输入证书关键字进入到控制台。点击证书申请&#xff0c;按照提示填写完相关信息…

如何搭建基于Java的网站服务器

租赁主机 租赁主机,去主机服务商那里租赁一台主机,可以去阿里云,腾讯云,狗爹,华为云那里租,也可以租其他的主机,还可以用花生壳自己在家里搭建一个,总之,你需要一台具有固定唯一公网IP的电脑; 软件装备软件准备,需要准备的软件列表如下:CentOS-7-x86_64-DVD-1611.iso,FileZilla…

学生问我25-30K得面试题能不能帮忙,这我不得上,爬取某网站电影视频内容

前言 嗨喽&#xff01;大家好&#xff0c;这里是魔王~ 一般国外的电影电视剧&#xff0c;咋都找不到资源&#xff0c;很多人就对此束手无策了 这个时候python就很有用了&#xff0c;只要叫得出名字的&#xff0c;都可以几行代码搞定~ [本次内容]: Python爬取美剧网站电影视…

使用python 采集某网站全站美女图片 ,这么好看得图还不学起来(含完整源码)

本次目的&#xff1a; python 抓取某某站图片 本次亮点&#xff1a; 系统性分析页面多页面数据解析海量图片数据保存 开发环境 & 第三方模块&#xff1a; 解释器版本 >>> python 3.8代码编辑器 >>> pycharm 2021.2requests >>> pip install…

Python实现下载全球最大旅游网站Tripadvisor美食数据~

前言 嗨喽&#xff01;大家好&#xff0c;这里是魔王~ Tripadvisor 是全球领先的旅游网站&#xff0c; 主要提供来自全球旅行者的点评和建议 全面覆盖全球的酒店、景点、餐厅、航空公司 &#xff0c;以及旅行规划和酒店、景点、餐厅预订功能。 Tripadvisor及旗下网站在全球49个…

利用requests+pyquery/selenium爬取塔读网站的小说(解决JS渲染的问题)

文章目录一、环境依赖二、实现1. 基本原理2. selenium代码3. requestspyquery实现代码4. 总结一些问题三、源码下载一、环境依赖 安装requests,selenium,pyquery模块&#xff0c;并下载chromedriver,配置好环境。 #python3 pip install requests selenium pyquery我的seleniu…

Python采集某网站内容, m3u8内容下载

前言 嗨喽&#xff0c;大家好呐&#xff01;这里是魔王~ 环境使用: Python 3.8 <建议最好是和一样版本>Pycharm 模块使用: import requests >>> pip install requests 内置模块 你安装好python环境就可以了 import reimport json 如果安装python第三方…

python带你采集不可言说网站数据,并带你多重骚操作~

前言 嗨喽&#xff0c;大家好呀&#xff0c;这里是魔王呐~ 今天我们采集国内知名的shipin弹幕网站&#xff01; 这里有及时的动漫新番,活跃的ACG氛围,有创意的Up主。 大家可以在这里找到许多欢乐。 目录&#xff08;可根据个人情况点击你想看的地方&#x1f497;&#xff0…

【python】批量高速获取 Instagram,一个简单的外国分享网站

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ! Instagram&#xff08;照片墙&#xff09;是一款运行在移动端上的社交应用&#xff0c;以一种快速、美妙和有趣的方式将你随时抓拍下的图片彼此分享&#xff0c;Facebook公司旗下社交应用 本篇文章主要是如何“批量高速获取”I…

SQL注入-攻入Apple ID钓鱼网站实录

之前写的一篇利用SQL注入方式攻击钓鱼网站的文章&#xff0c;现在在博客园再分享一下。 下午&#xff0c;朋友发了一条朋友圈&#xff0c;内容大概这样&#xff1a; 大体就是她的iPhone丢了&#xff0c;收到了钓鱼短信&#xff0c;多么熟悉的套路&#xff0c;如下&#xff1a; …

CNAME关联githubPage域名及中文域名,创建个人网站

对于前端开发来说&#xff0c;部署一个自己的个人网站部署服务器等比较麻烦&#xff0c;如果只是做静态页面的展示GitHubPage完全够用&#xff0c;而且有300M免费的空间&#xff0c;完全满足需求。 首先你要有GitHubPage项目&#xff0c;具体怎么搭建不在这里说了,前端小白也可…

网站发布-noip

使用no-ip发布网站 本文使用no-ip进行域名的申请与绑定以及最后网站的发布。 用户注册 域名申请 选择My Account 选择Dynamic DNS 选择Create Hostname 创建网站名 输入自己想要的Hostname选择DomainRecord Type正常选A&#xff0c;其他的根据自己需求 创建完成 域名配…

高并发高流量网站架构

Web2.0的兴起&#xff0c;掀起了互联网新一轮的网络创业大潮。以用户为导向的新网站建设概念&#xff0c;细分了网站功能和用户群&#xff0c;不仅成功的造就了一大批新生的网站&#xff0c;也极大的方便了上网的人们。但Web2.0以用户为导向的理念&#xff0c;使得新生的网站有…

制作个人音乐网站

转载于:https://www.cnblogs.com/big-bang3/p/8056870.html