Get
前台代碼
<script> $(function () { $.ajax({ type: "get", dataType: "json", contentType: 'application/json', url: "http://localhost:19930/omy360api/HomeAPI/GetToken", data: { "UserName": "wly666", "PassWord": "123456" }, success: function (data, status) { console.log(data); }, error: function (e) { }, complete: function () { } }); }); </script>
/// <summary> /// 生成Token的令牌 /// </summary> /// <param name="us">userinfo</param> /// <returns>Objetc</returns> [HttpGet] public object GetToken([FromUri]UserInfo us)
上圖(2)為后台代碼 關鍵在於
[FromUri]特性
Get本來傳遞參數是以URL字符串拼接而成的
Get類型的方法命名,應盡量采用“Get+方法名”的命名方式,且習慣性地在方法前加上[HttpGet特性]
實參與形參的匹配,遵循路由規則
GET除了可以以這種方式來實現傳遞實體參數,還可以傳遞時為字符串格式JSON后台轉換。
Post
$.ajax({ type: "Post", url: "/omy360api/HomeAPI/PostToken", data: { "Username": "XXXXX","Password":"123456"} })
[HttpPost] public object PostToken([FromBody]UserInfo us)
基本上這樣子就夠了接下來該做什么就做什么吧 實體參數這么傳遞就夠啦~
再來說一下API跨域的問題解決方法很多種 我就說最簡單的一種就好了
添加NutGet程序包 搜索Cors
添加完畢 找到App_start文件夾下的WebapiConfig 在
Register方法下加一句代碼就夠了
//跨域配置 config.EnableCors(new EnableCorsAttribute("*", "*", "*"));
跨域問題也輕松解決了 希望大家學到了東西~
不積跬步無以至千里,不計小流無以成江海~