[FromBody]必须是application/json 否则会报415 不支持的类型


//Forms
function FormsPost(data) { //Default Type x-www-form-urlencoding =>Form
$.ajax({
url: "/api/AgentAccount/PostForm",
type: "post",
datatype: "json",
data: data,
success: function (data) {
alert('success');
}
}).fail(
function (xhr, textstatus, err) {
alert('error: ' + err);
});
} //[FromBody] Model
function ModelPost(data) {
$.ajax({
url: "/api/AgentAccount/UserRegister",
type: "post",
contentType: 'application/json; charset=utf-8',
datatype: "json",
data: JSON.stringify(data),//jSON.stringfy for Model transmit [FromBody] will be used;
success: function (data) {
alert('success');
}
}).fail(
function (xhr,textstatus, err) {
alert('error: ' + err);
});
} //[FromBody] String
function StringPost(data) {
data = { "": "sds" };
$.post('/api/AgentAccount/PostString', data);
$.ajax({
url: "/api/AgentAccount/PostString",
type: "post",
contentType: 'application/json; charset=utf-8',
datatype: "json",
data: data,
success: function (data) {
alert('success');
}
}).fail(
function (xhr, textstatus, err) {
alert('error: ' + err);
});
} //[FromBody] Image
function XhrUploadImage() { } //[FromeBody] xhr.Model
function XhrPostModel(data) {
xhr = new XMLHttpRequest();
xhr.open("POST", "/api/AgentAccount/UserRegister", true);
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.send(JSON.stringify(data));
xhr.onreadystatechange = function (event) {
if (4 == xhr.readyState) {
if ((xhr.status >= 200 && xhr.status < 300) || xhr.status == 304) {
alert(xhr.responseText);
} else {
alert('error:' + xhr.status);
}
}
};
}

 对应controller action

        [HttpPost("PostForm")]
public JsonResult PostForm(string FullName)
{
var data = new
{
username = "PostString"
};
return Json(data);
} [HttpPost("UserRegister")]
public JsonResult UserRegister([FromBody]AspNetUsers value)
{
var data = new {
username="sf"
};
return Json(data);
} // POST api/values
[HttpPost("PostString")]
public JsonResult PostString([FromBody] string value)
{
var data = new
{
username = "sf"
};
return Json(data);
}

  

 

XHR2 和[FromBody]使用说明的更多相关文章

  1. Atitit.项目修改补丁打包工具 使用说明

    Atitit.项目修改补丁打包工具 使用说明 1.1. 打包工具已经在群里面.打包工具.bat1 1.2. 使用方法:放在项目主目录下,执行即可1 1.3. 打包工具的原理以及要打包的项目列表1 1. ...

  2. awk使用说明

    原文地址:http://www.cnblogs.com/verrion/p/awk_usage.html Awk使用说明 运维必须掌握的三剑客工具:grep(文件内容过滤器),sed(数据流处理器), ...

  3. webapi frombody fromuri的参数绑定规则

    在WebAPI中,请求主体(HttpContent)只能被读取一次,不被缓存,只能向前读取的流. 举例子说明: 1. 请求地址:/?id=123&name=bob 服务端方法: void Ac ...

  4. 使用XHR2或Jsonp实现跨域以及实现原理

    我们直接使用XMLHttpRequset请求外部接口 会发现 报这个错误 其实浏览器成功发送请求并拿回了数据  只是浏览器的同源策略 禁止了获取  在xhr2 服务器端支持跨域 需要在响应头增加 Ac ...

  5. html5拖拽事件 xhr2 实现文件上传 含进度条

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  6. “我爱背单词”beta版发布与使用说明

    我爱背单词BETA版本发布 第二轮迭代终于画上圆满句号,我们的“我爱背单词”beta版本已经发布. Beta版本说明 项目名称 我爱背单词 版本 Beta版 团队名称 北京航空航天大学计算机学院  拒 ...

  7. Oracle 中 union 和union all 的简单使用说明

    1.刚刚工作不久,经常接触oracle,但是对oracle很多东西都不是很熟.今天我们来了解一下union和union all的简单使用说明.Union(union all): 指令的目的是将两个 S ...

  8. ASP.NET MVC Web API Post FromBody(Web API 如何正确 Post)

    问题场景: ASP.NET MVC Web API 定义 Post 方法,HttpClient 使用 JsonConvert.SerializeObject 传参进行调用,比如 Web Api 中定义 ...

  9. Map工具系列-02-数据迁移工具使用说明

    所有cs端工具集成了一个工具面板 -打开(IE) Map工具系列-01-Map代码生成工具说明 Map工具系列-02-数据迁移工具使用说明 Map工具系列-03-代码生成BySQl工具使用说明 Map ...

随机推荐

  1. javascript中的计时器

    javascript中的定时器有两种:一种是一次性定时器,一种是可以持续使用的定时器: 1:一次性定时器setTimeout(a,b):兼容ie的任何版本 该方法接受两个参数,第一个是要执行的代码,第 ...

  2. [转载] [Mark]分布式存储必读论文

    原文: http://50vip.com/423.html 分布式存储泛指存储存储和管理数据的系统, 与无状态的应用服务器不同, 如何处理各种故障以保证数据一致,数据不丢, 数据持续可用, 是分布式存 ...

  3. [转载] 【每周推荐阅读】C-Store:列式存储数据库

    Record-based与column-based是数据库和存储系统里面两种不同的data layout.我们的思维逻辑是基于行记录的,即Record-based data layout,数据记录都是 ...

  4. JAVA必背面试题和项目面试通关要点

    一 数据库 1.常问数据库查询.修改(SQL查询包含筛选查询.聚合查询和链接查询和优化问题,手写SQL语句,例如四个球队比赛,用SQL显示所有比赛组合:举例2:选择重复项,然后去掉重复项:) 数据库里 ...

  5. Android 开源项目分类汇总(转)

    Android 开源项目分类汇总(转) ## 第一部分 个性化控件(View)主要介绍那些不错个性化的 View,包括 ListView.ActionBar.Menu.ViewPager.Galler ...

  6. 有趣的JavaScript小程序

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. maven Connection refused: connect

    现象: 本地可以访问错误提示中的地址.但使用maven无法下载jar包. 环境: 浏览器上网需要使用代理 解决方法: 设置成正常代理可以.具体方法可以下载一个代理工具.只要IE配置成能直接访问http ...

  8. WCF配置详解

    前面一篇文章<WCF 学习总结1 -- 简单实例> 一股脑儿展示了几种WCF部署方式,其中配置文件(App.config/Web.config)都是IDE自动生成,省去了我们不少功夫.现在 ...

  9. 是不是每个新手都要在samba那儿交足够的时间学费?

    每次重新装了虚拟机都会在安装几个必要的服务器这个浪费不少时间, 这一次在Fedora20上装samba,这么配置都无法再windows上登陆,查看了各种配置文件,折腾的天昏地暗,最后终于找到原因: 在 ...

  10. eclipse 下的 merge 是如何实现的

    1 我从eclipse里面新建一个workspace2 新建一个分支3 再新建另外一个分支4 回到原分支, 修改某一行,比如a.txt的85行5 提交git add commit6 切换到新分支7 修 ...