一次webapi Post请求失败记录
//点击添加按钮
$("#add").click(function () {
//layer.msg("添加");
var data = { "stuAge": 20, "stuClass": 2, "stuName": "诸葛大力", "stuStatus": 1 };
alert(data);
$.ajax({
url: '/api/LayuiApi/AddStudent',
contentType: 'application/json',
type: 'post',
data: JSON.stringify(data),
success: function () {
}
});
});
后台接口:
[HttpPost]
public IActionResult AddStudent(Student stu)
{
try
{
_context.Student.Add(stu);
_context.SaveChanges();
return Ok(new { state = true, msg = "添加成功" });
}
catch(Exception ex)
{
return Ok(new { state = false, msg = ex.Message});
}
}
最开始直接将var data = { "stuAge": 20, "stuClass": 2, "stuName": "诸葛大力", "stuStatus": 1 };作为数据传到后台 无论怎样更改访问都失败,
最终发现需要将data改为 JSON.stringify(data), 问题解决。。。但是花了好久才发现
在更新一点:
当我在分装了方法 打算直接传入实体 以后直接调用时,方法如下:
function Save(model) {
$.ajax({
url: addurl,
contentType: 'application/json',
type: 'post',
data: JSON.stringify(model),
success: function (res) {
if (res.state == true) {
var obj = { stuName: $("#stuName").val(), stuAge: $("#stuAge").val(), stuClassId: $("#stuClassName").val() };
ReloadTable("demo", tableurl, obj);
layer.closeAll();
layer.msg("添加成功", { icon: 1 });
}
else {
layer.msg("添加失败,请联系管理员!", { icon: 2 });
console.log(res.msg);
}
}
});
}
在调用时我一开始是这么传值的:
$("#add").click(function () {
InitAddForm();
layer.open({
type: 1,
area: ['860px', '360px'],
content: $('#AddDiv'),
btn: ['保存', '取消'],
yes: function (index, layero) {
var stuName = $("#AddDiv input[name='stuName']").val();
var stuage = $("#AddDiv input[name='stuAge']").val();
var stuClass = $("#shId").val();
if (CheckAddForm(stuName, stuage, stuClass)) {
var data = { "stuAge": parseInt(stuage), "stuClass": parseInt(stuClass), "stuName": stuName, "stuStatus": 1 };
Save(data);
} else {
return false;
}
}
});
})
我一开始并没有加parseint
var data = { "stuAge": parseInt(stuage), "stuClass": parseInt(stuClass), "stuName": stuName, "stuStatus": 1 };
以至于后来调试前台js才发现栓来的age等都是字符串 所以和后台的模型类定义的int类型不符合 怎么传都是400 || 405
个人觉得这个点也很值得注意
postman测试结果如下图:
1.当我把age加上双引号变为字符串时:
返回为400
当我把age改回int
今天又犯了一个错 在core 的webapi中
忘记指定给路由配置action 导致半天文件上传访问接口一直失败 。。。。。痛定思痛 以后绝对不再犯了 路由配置!!!
一次webapi Post请求失败记录的更多相关文章
- 网络请求失败记录(安卓4g网络下第一次请求特别慢或者失败)
最近app的一次版本上线以后出现4g网络下请求接口特别慢,第一次调用接口非常非常慢或者直接访问失败,后面就正常了,但是WiFi情况下并不会出现这个问题.最主要的是IOS的线上app并没有问题. 开始怀 ...
- WebApi接口请求失败,找不到资源。
WebApi开发接口,实现同步数据库的数据给安卓. public class UserInfoController : ApiControllerBase { private UserBLL user ...
- 使用ActionFilterAttribute 记录 WebApi Action 请求和返回结果记录
使用ActionFilterAttribute 记录 WebApi Action 请求和返回结果记录 C#进阶系列——WebApi 异常处理解决方案 [ASP.NET Web API教程]4.3 AS ...
- WebApi(四)-Post接口请求失败或接受不到参数(解决方法)
post方式只能接受一个参数而且必须用FromBody特性标识,所以当没有使用FromBody特性标识的时候就会请求失败,如有添加添加了那访问接口时候参数应传对象不能是key:val的格式否则会接收到 ...
- WebApi 异步请求(HttpClient)
还是那几句话: 学无止境,精益求精 十年河东,十年河西,莫欺少年穷 学历代表你的过去,能力代表你的现在,学习代表你的将来 废话不多说,直接进入正题: 今天公司总部要求各个分公司把短信接口对接上,所谓的 ...
- Asp.Net WebApi Post请求整理(一)
Asp.Net WebApi+JQuery Ajax的Post请求整理 一.总结 1.WebApi 默认支持Post提交处理,返回的结果为json对象,前台不需要手动反序列化处理.2.WebApi 接 ...
- spring Boot使用AOP统一处理Web请求日志记录
1.使用spring boot实现一个拦截器 1.引入依赖: <dependency> <groupId>org.springframework.boot</grou ...
- IE浏览器缓存导致Ajax请求失败
在IE浏览器中通过Ajax请求后台的数据,如果Page请求是postback类型的,可能会导致Ajax请求失败的问题 我们都知道ajax能提高页面载入的速度主要的原因是通过ajax减少了重复数据的载入 ...
- c# WebApi POST请求同时包含数据及其文件
原因:创建.net WebApi的接口API.IIS作为服务端.安卓作为客户端发送json文件及其文件. Android端使用xUtils3.0实现文件上传 java代码: //要传递给服务器的jso ...
随机推荐
- java安全编码指南之:输入注入injection
目录 简介 SQL注入 java中的SQL注入 使用PreparedStatement XML中的SQL注入 XML注入的java代码 简介 注入问题是安全中一个非常常见的问题,今天我们来探讨一下ja ...
- vue的二级联动,数据是从php获取到的
1.首先,一级要有change改变事件的关键字,v-on:change="selectarr($event)" 这是created(){}函数里面的自动调用一级分类的数据 html ...
- ps 安装 ps 2017 下载 及教程(保姆式教程)
链接:https://pan.baidu.com/s/1GJHiwmxwRApFYhyNZBCQtQ 提取码:7r6u 以上是百度网盘的地址. 1.下载解压安装前先断网在安装点击set-up 软件,之 ...
- 多测师讲解 _接口自动化框架设计分层思想(001)_高级讲师肖sir
第一层: 第二层:调用接口层 VOQGWBZYNBOAVZGE
- go视频提取音频
package main import ( "bytes" "fmt" "log" "os" "os/exec ...
- beego路由
router.go package routersimport ( "beego01/controllers" "github.com/astaxie/beego&quo ...
- Spring源码解析之基础应用(三)
组合Java配置 在XML中,我们可以使用<import/>标签,在一个XML文件中引入另一个XML文件,在Java类中,我们同样可以在一个配置类中用@Import引入另一个配置类,被引入 ...
- linux 环境搭建Jenkins
这里提供一个本地搭建Jenkins的方法,基于wins 的 https://blog.csdn.net/u011541946/article/month/2017/09/2 下面讲的是在服务器上操 ...
- JS的Document属性和方法(转)
document.title //设置文档标题等价于HTML的title标签document.bgColor //设置页面背景色document.fgColor //设置前景色(文本颜色)docume ...
- Anderson《空气动力学基础》5th读书笔记 第3记——流动类型
一.连续介质与自由分子流动 分子之间相互碰撞的平均距离定义为平均自由程 .如果平均自由程的数量级远小于飞行器的尺寸时,此时,分子对物体的碰撞如此频繁以至于物体无法分辨出单个的分子碰撞,这时,对物体 ...