.Net WebAPI+Jquery Ajax 请求参数
=====Get请求参数会有长度限制,所以如果长度过长可用Post请求
Get: QueryString 类型参数
Post: FormData 类型参数
Get 请求
在浏览器F12中→Network→Headers→Query String Parameters 显示Get请求的参数
在WebAPI ajax请求中get 请求在后端接口直接可用参数接收 例如后端接口参数:
(string a,string b)
前端接口:/Controller/方法名?a=1&&b=2; a=1&&b=2这个就是参数名和值:
直接在前端以Query String 形式参数就可接收。但是如果你所传的参数值长度过长,那么就会出现参数值乱码,
这个时候我们就要用到下面的post 的方法。
Post 请求
在浏览器F12中→Network→Headers→Form Data 中显示Post请求的参数
Post 请求参数的格式 是Json类型,其中也可以使用Get 的QueryString传输方式,简单来说,就是可以将FormData和
QueryString 在Post请求中可同时使用
POST在后端接收的时候会和GET 略有不同
1.使用类类型接收(不过这个方法有很大不方便之处,因为每个接口需要的参数不一样,不可能一个接口写一个实体,我推荐使用第二种方法)
2.使用 using Newtonsoft.Json.Linq命名空间的 JObject,这是一个存储Json对象的类,因为前端传过来的就是Json类型与此不谋而合
public string 方法名([FromBody]JObject obj)obj["参数名"] //如果是string类型toString即可,如果是int 则(int)就行,多个参数同等道理
注意:第二种方法在前端的参数格式 {"参数名1":“值1”,"参数名2":“值2”},类似于这样写即可,不用使用JSON.stringify()这个方法将Json转字符串形式
如果有不当之处,还望大神进行留言指正,谢谢,忘大家共同进步!