在Ajax中,JSON是一种轻量级的数据交换格式。易于人阅读和编写,同时也易于机器解析和生成,它是JavaScript对象与服务器对象交互的一种技术手段,JavaScript中使用function构建函数类,在.net服务器方使用JSON类库解析此JavaScript函数类达到JavaScript与服务器传递数据的目的。
应用举例:
请求页send_json_request.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="send_json_request.aspx.cs" Inherits="Ajax_send_json_request" %>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<script language="javascript" src="json.js"></script>
<script language="javascript">
var xmlHttp;
function createXMLHttp()
{
if (window.ActiveXObject)
{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest)
{
xmlHttp = new XMLHttpRequest();
}
}
function user(name,pwd)
{
this.Name = name;
this.Pwd = pwd;
}
function getUser()
{
return new user(document.getElementById('txtName').value,document.getElementById('txtPwd').value);
}
function getUserInfo()
{
var user1 = getUser();
var json_user1 = JSON.stringify(user1);
createXMLHttp();
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("POST","send_json_response.aspx?timeStamp="+new Date().getTime(),true);
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlHttp.send(json_user1);
return false;
}
function handleStateChange()
{
if (xmlHttp.readyState == 4 && xmlHttp.status == 200)
{
alert(xmlHttp.responseText);
}
}
</script>
</head>
<body>
<form id="Form1" runat="server">
<div>
用户名:
<input type="text" name="txtName" id="txtName">
密码:
<input type="text" name="txtPwd" id="txtPwd">
<input type="button" name="Submit" value="查看用户信息" onClick="return getUserInfo();">
</div>
</form>
</body>
</html>
响应页send_json_response.aspx:
using System;
using System.Collections.Generic;
using System.Text;
using Newtonsoft.Json;
using System.IO;
using NUnit.Framework;
public partial class Ajax_send_json_response : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string str = string.Empty;
byte[] bytes = Request.BinaryRead(Request.TotalBytes);
str = System.Text.Encoding.UTF8.GetString(bytes);
User u = (User)JavaScriptConvert.DeserializeObject(str, typeof(User));
if (u.Name.ToLower().Equals("admin") && u.Pwd.ToLower().Equals("admin"))
{
Response.Write("管理员");
}
else if (u.Name.ToLower().Equals("user") && u.Pwd.ToLower().Equals("user"))
{
Response.Write("普通用户");
}
else
{
Response.Write("输入错误");
}
}
new class User
{
private string name;
private string pwd;
public string Name
{
set { this.name = value; }
get { return this.name; }
}
public string Pwd
{
set { this.pwd = value; }
get { return this.pwd; }
}
}
}
注:上例需要json.js,Newtonsoft.Json.dll,nunit.framework.dll.
分享到:
相关推荐
js调用java代码查询数据库中的数据,通过json传递数据列表
Datasnap 使用JSON 传递数据的简易方法.mht
jquery与java交互通过json传递数据的经典实例,必备,不可多得
SpringMVC中使用JSON传递数据时用的jar包
服务端使用json 传递 给客户端的一些例子 有的用到了mysql数据库和一些简单的json存储操作 是csdn上例子的总和
主要介绍了如何使用微软自带的ajax在前台脚本通过json传递数据到后台的实现方法
Qt WebEngine json 数据相互传递 ,QT WebEngine 服务端传送JSON字符串到 网页端,网页端进行解析,网页端生成json字符串,QT 服务端进行解析。 编译环境vs2013 qt5.7
DataSnap通过json上传数据集到服务端并解释
json.js and json.jar 博文链接:https://terran-li2008.iteye.com/blog/199088
JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。本文将快速讲解 JSON 格式,并通过代码示例演示如何分别在客户端和服务器端进行 JSON 格式数据的处理。...
使用@RequestBody标签接收json数据,参数类型不能用Sting 看这两个注解的作用 @RequestParam 是作用在形参列表上,RequestParam可以接受简单类型的属性,也可以接受对象类型。在前端传入的是json字符串,后台按字符...
微信小程序获取json页面数据
Mvc传递Json数据 Json传输规范。绝对值得
struts2框架json传递后台数据到echarts,把数据从后台传递到前端。这里我用的是json的方式传递,框架是struts2
JavaScript调用Android方法,向Android方法传递json数据。
$.ajax json数据传递方法.docx
jQuery ajax、post、get、json格式传递数据例子 jQuery ajax、post、get、json格式传递数据例子
ajax中使用json传递数据时,其它数据类型都不是问题,但是如果服务器端生成的JSON中有bool类型的数据时,到客户端解析时出现了小小的问题,总结如下: 服务器返回的JSON为: 代码如下: {“TypeID”:[1037],”Title”...
如何解决@RequestParam无法接收vue+axios传递json数据(csdn)————程序
一个jquery+json 数据传递的 实例工程,代码注释详细,很适合 初学者,这是我帮老弟打的,希望可以帮到其他人