webApi 数据绑定 获取
直接上代码:
<html>
<head>
<meta name="viewport" content="width=device-width" />
<script src="~/Scripts/jquery-1.8.2.js"></script>
<script>
function Test() {
/*
无参数Get $.ajax(
{
url: 'api/values/GetUser',
type: 'get',
//data:{},
success: function (data) {
console.log(JSON.stringify(data));
}
});
*/ /*
单个参数Get
*/
/*$.ajax(
{
url: 'api/values/GetName',
type: 'get',
data: {name:"pingdong"},
success: function (data)
{
console.log(JSON.stringify(data));
}
});
*/ /*Get多个参数Get
$.ajax(
{
url: 'api/values/GetNameAndSex',
type: 'get',
data: {name:'pingdong',sex:'男'},
success: function (data)
{
console.log(JSON.stringify(data));
}
});
*/ /*post 无参数
$.ajax(
{
url: 'api/values/PostNoParmer',
type: 'post',
data: {},
success: function (data) {
console.log(JSON.stringify(data));
}
}
);
*/ /*
post一个参数
$.ajax({
url: 'api/values/PostName',
type: 'post',
data: {"":'pingdong'},
success: function (data)
{
console.log(JSON.stringify(data));
}
});
*/ /*
post多个参数
$.ajax({
url: 'api/values/PostNameAndSex',
type: 'post',
data: {name:'pingdong',sex:'男'},
success: function (data)
{
console.log(JSON.stringify(data));
}
});
*/ /*
post json格式的数据(单条) var mydata = { name: "pingdong", sex: '男' }; $.ajax(
{
url: 'api/values/PostOneJson',
type: 'post',
data: JSON.stringify(mydata),//将mydata转化为字符串
contentType: 'application/json',//默认情况下会出错。因为ajax提交数据默认请求头中的Content-type为:application/x-www-form-urlencoded(即默认的key=value)。而我们需要提交的是json格式的数据,所以需要指定发送到服务端的数据格式:application/json
succsess: function (data)
{
console.log(data);
}
});
*/ /*
post json格式的数据(多条)
var mydata = [
{ name: "pingdong", sex: '男' },
{name:'张三',sex:'男'},
{name:'李四',sex:'男'},
];
$.ajax(
{
url: 'api/values/PostMoreJson',
type: 'post',
data: JSON.stringify(mydata),
contentType: 'application/json',
success: function (data)
{
console.log(JSON.stringify(data));
}
});
*/ /*传递复杂json(示例) var mydata = {
"productPrice": [
{
"priceInfo": [
{
"productid": "77",
"webstileid": "2"
},
{
"productid": "191",
"webstileid": "3"
}
]
},
{
"priceRegex": [
{
"webstileid": "2",
"tid": "6"
},
{
"webstileid": "3",
"tid": "7"
}
]
}
]
};
console.log(JSON.stringify(mydata));
$.ajax(
{
url: 'api/values/PostMoreAndMoreJson',
type: 'post',
data: JSON.stringify(mydata),
contentType: 'application/json',
success: function (data)
{
console.log(JSON.stringify(data));
}
});
*/
} /*
备注;
contentType:指定请求类型 "application/json"
dataType:指定输出类型 "xml"
*/ </script>
<title>Index</title>
</head>
<body>
<div>
<input type="button" onclick="Test()" value="点我" />
</div>
</body>
</html>
using My_WebApiDemo.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Newtonsoft.Json; namespace My_WebApiDemo.Controllers
{
// [Authentication]
public class ValuesController : ApiController
{ static List<User> userList=new List<User>{new User{ name="张三",password=""},
new User{ name="王五",password=""}};
public List<User> GetUser()
{
return userList;
} public string GetName(string name)
{
return string.Format("你好,我叫{0}.", name);
} public string GetNameAndSex(string name, string sex)
{
return string.Format("你好,我叫{0},性别:{1}", name,sex);
} public List<User> PostNoParmer()
{
return userList;
} /// <summary>
/// 单个参数获取的时候,并不是根据key=value,而是 =value
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
public string PostName([FromBody]string name)
{
return string.Format("你好,我叫{0}.", name);
} /// <summary>
/// 传递两个参数的时候,FromBody只能有一个,所以提供一个对象来获取对应的值
/// </summary>
/// <returns></returns>
public string PostNameAndSex(NameAndSex nameAndsex)
{
return string.Format("你好,我叫{0}.", nameAndsex.name,nameAndsex.sex);
} /// <summary>
/// 接收json格式的数据(单条)
/// </summary>
/// <returns></returns>
public string PostOneJson(NameAndSex nameAndsex)
{ return string.Format("你好,我叫{0}.", nameAndsex.name, nameAndsex.sex); } /// <summary>
/// 接收json格式的数据(多条)
/// </summary>
/// <returns></returns>
public string PostMoreJson(IList<NameAndSex> nameAndsexList)
{
string str = "";
foreach (var item in nameAndsexList)
{
str += string.Format("你好,我叫{0}.", item.name, item.sex);;
}
return str;
} /// <summary>
/// 接收json格式的数据(复杂)
/// </summary>
/// <returns></returns>
public string PostMoreAndMoreJson(Demo demo)
{
return JsonConvert.SerializeObject(demo);
} }
public class NameAndSex
{
public string name { get; set; }
public string sex { get; set; }
} public class Demo
{
public IList<productPrice> productPrice { get; set; }
} public class productPrice
{
public IList<priceInfo> priceInfo { get; set; }
public IList<priceRegex> priceRegex { get; set; }
} public class priceInfo
{
public string productid { get; set; }
public string webstileid { get; set; }
}
public class priceRegex
{
public string webstileid { get; set; }
public string tid { get; set; }
}
}
webApi 数据绑定 获取的更多相关文章
- Asp.Net Mvc4 Webapi Request获取参数
最近用mvc4中的WEBAPI,发现接收参数不是很方便,跟传统的request.querystring和request.form有很大区别,在网上搜了一大圈,各种方案都有,但不是太详细,于是跟踪Act ...
- .net core webapi 后台获取客户端ip地址
Asp.Net Core2.0获取客户IP地址,及解决发布到Ubuntu服务器获取不到正确IP解决办法 1.获取客户端IP地址实现方法(扩展类) 1 using Microsoft.AspNetC ...
- WebApi 后台获取token值
前台传递一个token,后台不知道怎么获取那么不是很悲剧吗. $(function () { $.ajax({ url: "/api/TokensTest/FirstCode", ...
- 关于C# winform怎么调用webapi来获取到json数据
C/S系统也可以和B/S系统一样实现“前后端分离”,那这样写winform就相当于纯粹的前端页面了,然后再单独部署一个webapi项目,通过api调用数据库进行数据的操作,有利于维护和数据安全性的提高 ...
- webapi中获取HttpContext
public OperationResultDto APILogin() { LoginModel model = new LoginModel(); HttpContextBase context ...
- c#访问webapi以及获取
提交post #region XML方式提交 public static void XML() { HttpWebRequest wReq = (HttpWebRe ...
- 关于C# 怎么调用webapi来获取到json数据
/// <summary> /// 调用api返回json /// </summary> /// <param name=& ...
- Mono for android 访问Webservice和WebApi以及获取和解析JSON
先看效果,注意:(1)这里由于我的模拟器不支持中文输入,所以,对于这张效果图,我是直接在代码中写死了我的查询城市,在下面的代码中我是没有把要查询的城市写死的. (2)读者要想成功使用本示例的所有代码的 ...
- ASP.NET WebAPi(selfhost)之文件同步或异步上传
前言 前面我们讲过利用AngularJs上传到WebAPi中进行处理,同时我们在MVC系列中讲过文件上传,本文结合MVC+WebAPi来进行文件的同步或者异步上传,顺便回顾下css和js,MVC作为客 ...
随机推荐
- IO(四)----对象的序列化
对象的序列化: 将内存中的对象直接写入到文件设备中. 对象的反序列化: 将文件设备中持久化的数据转换为内存对象. 自定义类只要实现了Serializable接口,便可以通过对象输入输出流对对象进行 ...
- Qt——动态库的创建和使用
一.动态库是什么 很多人写程序的人都见过.lib和.dll文件,对动态库也略有耳闻. 生成动态库后可以得到两个文件,后缀名分别是.lib以及.dll. 简而言之,.lib称为导入库,相当于头文件:.d ...
- OrchardNoCMS vNext如何在VS2015下调试
由于VS2015还没有出来正式版,ASP.NET 5也是没有出来正式版.所以在你下载了OrchardNoCMS vNext的代码后,需要配置一些东西,才能启动项目,开始调试. 需要注意以下几点: 1. ...
- C/C++实践笔记 004
转义字符 #define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h> void main1() { c ...
- jquery submit() 提交失败
今天写一个表单提交 居然走到$('#wechat_form').submit() 这,但怎么都没有提交这个表单 google 了一下 Additional Notes:Forms and their ...
- E - Super Jumping! Jumping! Jumping!
/* Nowadays, a kind of chess game called "Super Jumping! Jumping! Jumping!" is very popula ...
- 在 MAC OS X 安装 ADB (Android调试桥)
什么是 ADB? Android调试桥( adb )是一个开发工具,帮助安卓设备和个人计算机之间的通信. 这种通信大多是在USB电缆下进行,但是也支持Wi-Fi连接. adb 还可被用来与电脑上运行的 ...
- Sqlserver 语法总结
修改列类型 alter table PRO_Element_b alter column matname varchar(1024) 更改一个表中的数据到另外一个表中 update a set a.n ...
- 【POJ 1390】Blocks
http://poj.org/problem?id=1390 黑书上的例题,感觉我这辈子是想不到这样的dp了QAQ \(f(i,j,k)\)表示将\(i\)到\(j\)合并,并且假设未来会有\(k\) ...
- Python3 基本数据类型
Python中的变量不需要声明,每个变量使用前必须赋值,变量赋值后才会被创建,在Python中变量就是变量,它没有类型.我们所说的"类型"是变量所指的内存中对象的类型. 等号(=) ...