Web API (一)
页面内容
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>各种非主流操作</title>
<script src="../javascript/jquery-1.8.2.js"></script>
<script>
内容
</script>
</head>
<body>
<input type="text" value="" id="userid" />
<input type="text" value="" id="name"/>
<input type="text" value="" id="userid2" />
<input type="text" value="" id="name3" />
<hr/>
<input type="button" value="get提交" onclick="wds_getuset()" />
<input type="button" value="get提交两个参数" onclick="wds_getuset2()" />
<hr/>
<input type="button" value="post提交" onclick="wds_postuset()" />
<input type="button" value="post提交两个参数" onclick="wds_postuset2()" />
<input type="button" value="post提交多个参数" onclick="wds_postuset3()" />
<hr/>
<input type="button" value="put提交" onclick="wds_putuset()" />
<input type="button" value="put提交一个参数" onclick="wds_putuset2()" />
<hr/>
<input type="button" value="delete提交" onclick="wds_deleteuset()" />
<input type="button" value="delete提交一个参数" onclick="wds_deleteuset2()" />
<hr/>
<div id="pj"> </div>
</body>
</html>
有关Get操作数据
//get 一个参数
function wds_getuset() {
var userid = $("#userid").val();
var url = "/api/user/GetUser/" + userid;
$.getJSON(url, function (msg) {
alert(msg);msg是个json串
var model = JSON.parse(msg);
alert(model["Name"]);
var model1 = $.parseJSON(msg);
alert(model1.Name);
var html = '<p>' + msg + '</p>';
$("#pj").append(html);
});
}
//get 二个参数
function wds_getuset2() {
var accunt = $("#userid").val();
var pwd = $("#name").val();
$.ajax({
url: "/api/user/GetTwoUser",
type: "get",
data:{"name":accunt,"pwd":pwd}, 【传2个数据可以成功,查过2个就会失败,多参数时,可以使用后面用到的方法】
success: function (data) {
alert(data);
}
});
}
后台:
[HttpGet]
public string GetUser(int id)
{
try
{
IXiao_UserBLL bll = new Xiao_UserBLL();
var model = bll.GetUserById(ConnectPool.connect, id);
return JsonConvert.SerializeObject(model);
}
catch
{
return null;
}
}
[HttpGet]
public void GetTwoUser(string name, string pwd)
{
}
Post方法
jquery部分 当产地一个参数是 参数如果写成键值对的形式,数据是传不过去的 //post 一个参数
function wds_postuset() {
var accunt = $("#userid").val();
$.post("/api/user/UserPost", { "": accunt }, function (msg) {
if (msg == "error") {
alert("添加失败!");
} else {
alert("恭喜你,添加成功!");
}
});
$.ajax({
url: "/api/user/UserPost",
type: "post",
data: { "":accunt },
success: function(data) {
alert(data);
}
}); }
//post 二个参数
function wds_postuset2() {
var accunt = $("#userid").val();
var pwd = $("#name").val();
$.post("/api/user/adduser", { "Account": accunt, "PassWord": pwd }, function (msg) {
if (msg == "error") {
alert("添加失败!");
} else {
alert("恭喜你,添加成功!");
}
}); $.ajax({
url: "/api/user/adduser",
type: "post",
data: { "Account": accunt, "PassWord": pwd },
success: function(data) {
alert(data);
}
}); var job= {
"Account": accunt,
"PassWord": pwd
}
$.ajax({
url: "/api/user/adduser",
type: "post",
data: JSON.stringify(job),
contentType:"application/json",
success: function (data) {
alert(data);
}
});
} //post 多个实体
function wds_postuset3() {
var accunt = $("#userid").val();
var pwd = $("#name").val();
var accunt2 = $("#userid2").val();
var pwd2 = $("#name3").val();
var us= {
"Account": accunt,
"PassWord": pwd
} var sc= {
"SchoolName": accunt2,
"SchoolAddress": pwd2
}
$.ajax({
url: "/api/user/PostTwoUser",
type: "post",
data: JSON.stringify({ "xiao_user": us, "xiao_school": sc }),
contentType: "application/json",
success: function (data) {
alert(data);
}
});
} 后台 [HttpPost]
public string UserPost([FromBody]string accunt)
{
try
{
IXiao_UserBLL bll = new Xiao_UserBLL();
var model = bll.GetUserById(ConnectPool.connect, Convert.ToInt32(accunt));
return JsonConvert.SerializeObject(model);
}
catch (Exception)
{
return null;
}
} [HttpPost]
public string adduser([FromBody] xiao_userModel model)
{
try
{
IXiao_UserBLL bll = new Xiao_UserBLL();
model.AddTime = DateTime.Now;
var result = bll.AddUser(ConnectPool.connect, model);
return result > ? "ok" : "error";
}
catch (Exception)
{
return "error";
}
} [HttpPost]
public void PostTwoUser([FromBody]JObject obj)
{
try
{
//dynamic 类型与 object 类型的行为是一样的。 但是,不会用编译器对包含 dynamic 类型表达式的操作进行解析或类型检查。 编译器将有关该操作信息打包在一起,并且该信息以后用于计算运行时操作。 在此过程中,类型 dynamic 的变量会编译到类型 object 的变量中。 因此,类型 dynamic 只在编译时存在,在运行时则不存在
dynamic json = obj;
JObject user = json.xiao_user;
JObject school = json.xiao_school;
}
catch (Exception)
{ throw;
}
}
Put 方法部分 Jquery
//put 无参
function wds_putuset() {
$.ajax({
url: "/api/user/PutUserName",
type: "put",
success: function (data) {
alert(data);
}
});
}
//put 一个参数
function wds_putuset2() {
var id = $("#userid").val();
$.ajax({
url: "/api/user/PutUserOne",
type: "put",
data: { "": id },
success: function (data) {
alert(data);
}
});
var us = {
"Account": id,
}
$.ajax({
url: "/api/user/PutUserOne",
type: "put",
data: JSON.stringify({ xiao_user: us }),
contentType: "application/json",
success: function (data) {
alert(data);
}
});
}
后台
[HttpPut]
public string PutUserName()
{
try
{
IXiao_UserBLL bll = new Xiao_UserBLL();
var model = bll.GetUserById(ConnectPool.connect, );
return JsonConvert.SerializeObject(model);
}
catch (Exception)
{
return null;
}
}
[HttpPut]
// public string PutUserOne([FromBody]JObject obj) 多个参数时使用
public string PutUserOne([FromBody]string userid)
{
return null;
}
delete 部分 jquery
//delete 无参数
function wds_deleteuset() {
$.ajax({
url: "/api/user/Deleteuser",
type: "delete",
success: function (data) {
alert(data);
}
});
}
后台
[HttpDelete]
public void Deleteuser()
{
}
这个和其他的都相同
webapi传参数详解 http://www.cnblogs.com/landeanfen/p/5337072.html
Web API (一)的更多相关文章
- 在一个空ASP.NET Web项目上创建一个ASP.NET Web API 2.0应用
由于ASP.NET Web API具有与ASP.NET MVC类似的编程方式,再加上目前市面上专门介绍ASP.NET Web API 的书籍少之又少(我们看到的相关内容往往是某本介绍ASP.NET M ...
- bootstrap + requireJS+ director+ knockout + web API = 一个时髦的单页程序
也许单页程序(Single Page Application)并不是什么时髦的玩意,像Gmail在很早之前就已经在使用这种模式.通常的说法是它通过避免页面刷新大大提高了网站的响应性,像操作桌面应用程序 ...
- Hello Web API系列教程——Web API与国际化
软件国际化是在软件设计和文档开发过程中,使得功能和代码设计能处理多种语言和文化习俗,在创建不同语言版本时,不需要重新设计源程序代码的软件工程方法.这在很多成熟的软件开发平台中非常常见.对于.net开发 ...
- ASP.NET Web API 跨域访问(CORS)
一.客户端用JSONP请求数据 如果你想用JSONP来获得跨域的数据,WebAPI本身是不支持javascript的callback的,它返回的JSON是这样的: {"YourSignatu ...
- Web Api 入门实战 (快速入门+工具使用+不依赖IIS)
平台之大势何人能挡? 带着你的Net飞奔吧!:http://www.cnblogs.com/dunitian/p/4822808.html 屁话我也就不多说了,什么简介的也省了,直接简单概括+demo ...
- Web APi之认证(Authentication)两种实现方式【二】(十三)
前言 上一节我们详细讲解了认证及其基本信息,这一节我们通过两种不同方式来实现认证,并且分析如何合理的利用这两种方式,文中涉及到的基础知识,请参看上一篇文中,就不再叙述废话. 序言 对于所谓的认证说到底 ...
- angular2系列教程(八)In-memory web api、HTTP服务、依赖注入、Observable
大家好,今天我们要讲是angular2的http功能模块,这个功能模块的代码不在angular2里面,需要我们另外引入: index.html <script src="lib/htt ...
- 我这么玩Web Api(二):数据验证,全局数据验证与单元测试
目录 一.模型状态 - ModelState 二.数据注解 - Data Annotations 三.自定义数据注解 四.全局数据验证 五.单元测试 一.模型状态 - ModelState 我理解 ...
- 我这么玩Web Api(一):帮助页面或用户手册(Microsoft and Swashbuckle Help Page)
前言 你需要为客户编写Api调用手册?你需要测试你的Api接口?你需要和前端进行接口对接?那么这篇文章应该可以帮到你.本文将介绍创建Web Api 帮助文档页面的两种方式,Microsoft Help ...
- [译] 在Web API 2 中实现带JSON的Patch请求
原文链接:The Patch Verb in Web API 2 with JSON 我想在.NET4.6 Web API 2 项目中使用Patch更新一个大对象中的某个字断,这才意识到我以前都没有用 ...
随机推荐
- collectionView关于点击事件
-(void)collectionView:(UICollectionView *)collectionView didDeselectItemAtIndexPath:(NSIndexPath *)i ...
- 网站图片列表动态显示、根据屏幕宽度动态设置DIV的CSS样式
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- CentOS安装maven3.2.2(Linux系列适用)
首先,下载最新的maven3.2.2,地址:http://mirrors.cnnic.cn/apache/maven/maven-3/3.2.2/binaries/apache-maven-3.2.2 ...
- maven 引用自己的jar
<build> <plugins> <plugin> <groupId>org.apache.maven.pl ...
- 基于php常用正则表达整理(上)
电子邮件:/\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/变量:/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/ 基于p ...
- PHP环境(apache,PHP,Mysql)详细配置方法
1.安装Apache ,直接运行安装即可,我们将其安装到D:\PHP\Apache/目录下 2.将PHP压缩包解压内容放到指定目录(例如:D:\PHP\Php5,将目录中的PHP.iniDevelop ...
- js 中 setTimeout()的用法
setTimeout()在js类中的使用方法 setTimeout (表达式,延时时间)setTimeout(表达式,交互时间)延时时间/交互时间是以豪秒为单位的(1000ms=1s) setTi ...
- Hibernate之总结
以前做.net,最近做java项目,负责服务端的开发,直接用的jdbc,线程安全问题.缓存同步问题以及连接池什么的,都是手动写,不但麻烦而且容易出错.项目结束,赶快抽时间学了下hibernate,每天 ...
- php正则表达式图谱
php 正则表达式分类图:
- 微软 Office 2010 SP2 正式版下载大全(含简中)
7月24日消息,微软正式为 Office 2010 和 SharePoint 2010 系列产品发布 SP 2服务包,带来重要更新和修复.除了提供产品补丁,SP2服务包还将提升产品的稳定性.性能以及安 ...