JSON傳送與接收

三维点云孔洞修复(附Python代码和公共点云数据集链接) (1)物体自身缺失(2)物体自身形状复杂,很多凹凸面不够规则甚至存在空腔,空腔内部无法被三维激光扫描仪扫描到(3)物体部分区域对激光扫描不敏感,未被扫描上(4)扫描仪的扫描稳定性。 阅读详情
在 JSON 中我們已經介紹過其基本格式,與XML相同,JSON只是一個文字格式,只要客戶端與伺服端可以剖析它,就可以利用它作為傳送資料的格式,但它是JavaScript的核心特性之一,所以在JavaScript中使用JSON作為資料格式很方便,您還可以在 http://www.json.org 找到處理JSON的程式庫,包括客戶端JavaScript library與伺服端的library。

相較於XML,JSON在資料表示時更為簡潔,例如一個表示帳戶的資料,XML中可能如下表示:
<account>
    <number>123456</number>
    <name>Justin</name>
    <balance>1000</balance>
</account>

而使用JSON可以這麼表示:
var account = {
    number : "123456",
    name: "Justin",
    balance: "1000"
};

您可以下載 http://www.json.org/json.js ,並將之加入至網頁之中:
<script type="text/javascript" src="json.js"></script>

json.js 中有JSON parser與JSON stringifier,例如它擴充了物件,增加了toJSONString()函式,您可以直接如下傳回物件的JSON表示法:
function Account(number, name, balance) {
    this.number = number;
    this.name = name;
    this.balance = balance;
}

var account = new Account(123456, "Justin", 1000);
alert(account.toJSONString());

您可以按下 執行範例 觀看結果。

您可以把JSON表示法以POST發送至伺服端,例如:
  • HandleJSONEx-2.js
var xmlHttp;

function createXMLHttpRequest() {
if(window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
else if(window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}

function prepareJSON() {
var number = document.getElementById("num").value;
var name = document.getElementById("name").value;
var balance = document.getElementById("bal").value;

var account = new Object();
account.number = number;
account.name = name;
account.balance = balance;

return account.toJSONString();
}

function handleAccount() {
var json = prepareJSON();
var url = "JSONServlet?timeStamp" + new Date().getTime();
createXMLHttpRequest();
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("POST", url);
xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlHttp.send(json);
}

function handleStateChange() {
if(xmlHttp.readyState == 4) {
if(xmlHttp.status == 200) {
document.getElementById("response").innerHTML = xmlHttp.responseText;
}
}
}

這個程式使用者輸入的帳號資訊包裝為物件,並使用JSON擴充的toJSONString()將之轉換為JSON格式,之後POST至伺服端,伺服端可以至   JSON in Java 下載JSON伺服端的Parser,您可以撰寫以下的程式:
  • JSONServlet.java
package onlyfun.caterpillar;

import java.io.*;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.json.*;

public class JSONServlet extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
public JSONServlet() {
super();
}

protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
String json = readJSONString(request);

JSONObject jsonObject = null;
String responseText = null;
try {
jsonObject = new JSONObject(json);
responseText = "帳號 " + jsonObject.getString("number") + "<br/> 名稱 "
+ jsonObject.getString("name") + "<br/> 餘額 " + jsonObject.getString("balance");
}
catch (JSONException e) {
e.printStackTrace();
}


response.setCharacterEncoding("UTF-8");
response.setContentType("text/xml");
response.getWriter().print(responseText);
}

private String readJSONString(HttpServletRequest request){
StringBuffer json = new StringBuffer();
String line = null;
try {
BufferedReader reader = request.getReader();
while((line = reader.readLine()) != null) {
json.append(line);
}
}
catch(Exception e) {
System.out.println(e.toString());
}
return json.toString();
}
}

這個Servlet剖析JSON,並將資料取出後再傳回文字回應。

如果將JSON字串傳回給客戶端瀏覽器,則可以使用eval()將之運算為一個JavaScript物件以進行操作。
CLASSB类移植(满足IEC 60730-1和60355-1标准) 针对软件认证需要满足IEC 60730-1和60335-1标准,ST公司专门提供的软件扩展包X-CUBE-CLASSB,它包含自测库和文档,支持多种STM32系列芯片,通过预集成测试库和标准化流程,帮助开发者快速满足国际安全标准,适用于家电、工业控制等高可靠性场景。ClassB软件包程序检测内容分为两个主要部分:启动时的自检和运行时的周期自检,MCU在上电的时候会进行复位启动,在启动完成以后会进行运行自检。 阅读详情

相关推荐

机器人抓取(一)—— ROS MoveIt! 程序控制真实UR5机器人运动(python)

接上篇:ubuntu18.04 ros-melodic 安装 ur_robot_driver,驱动真实的 ur5 机器人 上文在 ubuntu 系统中配置了ur 机器人ros功能包 universal_robot 和驱动 Universal_Robots_ROS_Driver,并实现了用 moveit_rviz 拖动机器人运动。本文旨在学习如何使用 moveit python 用户接口moveit_commander,实现真实的ur5 机器人轨迹规划与控制。 1. ur5 机器人控制 参考:MoveIt »

zxxRobot的博客 1万+

java对于JSON的解析

JSONObject是一种在Java中表示JSON对象的数据结构。它是一个无序的键值对集合,用花括号({})包围,并且每个键值对由冒号(:)分隔。在Java中使用JSONObject,通常需要使用JSON库(如Jackson、Gson等)进行解析和操作。以下是一些常见的JSONObject操作:需要注意的是,具体的操作方式和方法名称可能会因使用的JSON库而有所不同。上述示例中的方法是基于JSON.simple库进行说明的,其他库可能会有自己的API。

qq_64356200的博客 1万+

强网杯Web题ezphp解题全记录:利用PHP反序列化与条件竞争拿下服务器

本文详细解析了强网杯Web题目ezphp的解题过程,通过PHP反序列化与条件竞争漏洞的组合利用,成功获取服务器权限。文章深入剖析了反序列化链的构造、文件上传绕过技巧以及条件竞争的实际应用,为CTF选手和Web安全研究者提供了宝贵的实战经验。

weixin_29006187的博客 384

AJAX和JSON详解

AJAX和JSON详解

write less , do more 1万+

Android:Google三方库之Adjust集成详细步骤

Android为APP添加google adjust功能

学习就是我的个性 4476

使用Ajax请求Json

第一种方法 //创建请求对象 var request = new XMLHttpRequest(); //配置请求参数,请求方式,请求地址 request.open("get", "..js/aap.json", true); //请求处理函数 request.onreadystatechange = function() { if (request.readyState == 4

tianxingege_的博客 2638

九齐NY8B062F单片机:12位ADC与4路PWM在智能家居控制中的实战应用

本文详细介绍了九齐NY8B062F单片机在智能家居控制中的实战应用,重点解析其12位ADC高精度传感器数据采集和4路PWM精准驱动技术。通过实际案例展示如何利用该单片机实现温湿度监测、灯光调节及电机控制,并分享低功耗设计与抗干扰方案,为低成本高可靠性的智能家居设备开发提供完整解决方案。

rnn9storyteller的博客 732

java解析json字符串详解(两种方法)

一、使用JSONObject来解析JSON数据官方提供的,所以不需要导入第三方jar包;直接上代码,如下 private void parseJSONWithJSONObject(String JsonData) { try { JSONArray jsonArray = new JSONArray(jsonData); fo...

diaozongjian9397的博客 6949

COMSOL新手必看:手把手教你搭建锂电池P2D模型(附完整参数设置)

本文为COMSOL新手提供了搭建锂电池P2D仿真模型的详细指南。文章从模型原理入手,逐步讲解软件设置、几何构建、关键参数配置及后处理分析,并探讨了如何将仿真结果与智能电池管理中的SOC、SOH估算相结合,为电池性能分析和BMS算法开发提供实用洞见。

transformer2023的博客 234

ADS电路仿真方法综述:原理与应用

在射频与微波电路设计中,精确的仿真技术是验证性能的关键。ADS(Advanced Design System)作为行业标准工具,集成了多种仿真方法,适用于不同场景。本文将系统解析瞬态分析、谐波平衡(HB)、交流分析(AC)、直流分析(DC)、S参数、大信号SP(LSSP)及包络分析的原理、实现机制与应用场景。

u014344410的博客 482

JSON与Ajax

JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于 ECMAScript (W3C制定的JS规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。同步和异步是建立在客户端和服务器端相互通信的基础上同步:客户端必须等待服务器端的响应,在等待的期间客户端不能做其它的操作。

小yu别错过的博客 1284

广东省道路工程检测练习试题(单选题)真题

1.一般项目的合格点率应达到( ),且不合格点的最大偏差值不得大于规定允许偏差值的1.5倍。A.不低于75%B.不低于80%C.不低于85%D.不低于90%答案:B2.进行土路基平整度检测时,当路宽小于9m,检测点数应为( )A.1B.2C.3D.4答案:A3.根据《城镇道路工程施工与质量验收规范》,在分部工程中,根据工种、材料、施工工艺等划分的是( )A.单位工程B.分项工程C.分部工程D.工序工程答案:B4.根据《城镇道路工程施工与质量验收规范》,土方路基压实度的检测频率为每1000m每压实层抽检( )

ZShy001238的博客 685

jQuery傳送json給php接收, php再傳送json回jQuery

[jQuery 部份]jQuery 傳送 json 給 php var car = new Array('toyota','BenZ','mazada',"alert(1);");(這裡刻意放一個XSS陷阱,稍後會提到它) var json = JSON.stringify(car);                (將陣列轉換成json格式) $.ajax({  

chinajobs的专栏 1172

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

JSON传送与接收

 在 JSON 中我们已经介绍过其基本格式,与XML相同,JSON只是一个文字格式,只要客户端与伺服端可以剖析它,就可以利用它作为传送数据的格式,但它是JavaScript的核心特性之一,所以在JavaScript中使用JSON作为资料格式很方便,您还可以在 http://www.json.org 找到处理JSON的链接库,包括客户端JavaScript library与伺服端的library

生活是什么 2265

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

JSON传送与接收(java)

在 JSON 中我们已经介绍过其基本格式,与XML相同,JSON只是一个文字格式,只要客户端与伺服端可以剖析它,就可以利用它作为传送数据的格式,但它是JavaScript的核心特性之一,所以在JavaScript中使用JSON作为资料格式很方便,您还可以在 http://www.json.org 找到处理JSON的链接库,包括客户端JavaScript library与伺服端的library。相较

Giraffe_zj的专栏 3万+

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

傳送與接收 JSON

from:http://www.openhome.cc/Gossip/JavaScript/JSON.html XML可用來表現階層性資料,然而建立與處理XML DOM較為複雜,在Web應用程式中,許多時候並不需要用到XML的複雜階層性,此時通常會採用JSON作為資料交換格式。 JSON全名JavaScript Object Notation,為JavaScript物件實字(Objec

kendyhj9999的专栏 537

Servlet和JSON传送与接收

http://it.chinawin.net/softwaredev/article-d431.html 在 JSON 中我们已经介绍过其基本格式,与XML相同,JSON只是一个文字格式,只要客户端与伺服端可以剖析它,就可以利用它作为传送资料的格式,但它是JavaScript的核心特性之一,所以在JavaScript中使用JSON作为资料格式很方便,您还可以在 http://www.js

kendyhj9999的专栏 4515

SpringMVC接收前台Ajax传送json数据

json.parse()用于将json字符串转换成JavaScript对象 Json.Stringify()将json对象转化成json字符串 第一种方式是前端传 json对象 //定义json对象 var username = $("#username").val(); var password = $("#passw...

weixin_30332705的博客 159

servlet接收第三方传送Json数据

servlet通过流接收第三方接口传送json数据

半世烟雨丶半世繁华的博客 741

java request 接收json_JSON传送与接收(java)

package onlyfun.caterpillar;import java.io.*;import javax.servlet.ServletException;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.json.*;public c...

weixin_35781524的博客 700

c#---JSON的传送与接收(转)

本篇文章主要介绍如何在Ajax的客户端与服务端之间传送JSON格式的数据。那么我们先来说说什么是JSON吧。JSON,即是JavaScript对象标记法,英文名称是JavaScript Object Notation,简称JSON,是 JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 19...

1011
上一篇: Spring MVC 入门 @ MultiActionController
下一篇: HTTP协议基础 @ 禁用浏览器缓存页面
lhminjava
博客等级 码龄21年 15粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值