.net WebApi 开发中某些注意事项

简介: 目前在做.net开发。 需要开发一套webapi. 这里记录一下某些注意点。   1. 如何开启跨域 如果webapi的用户是域外用户,则需要根据需要开放跨域。 首先安装Install-Package Microsoft.AspNet.WebApi.Cors 在WebApiConfig.cs里开启config.EnableCors(); 可以控制开放的范围,例如只开放某些controller,还是全局都开发等到。

目前在做.net开发。

需要开发一套webapi.

这里记录一下某些注意点。

 

1. 如何开启跨域

如果webapi的用户是域外用户,则需要根据需要开放跨域。

首先安装Install-Package Microsoft.AspNet.WebApi.Cors

在WebApiConfig.cs里开启config.EnableCors();

可以控制开放的范围,例如只开放某些controller,还是全局都开发等到。

参考:http://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api

 

2.接收json

webapi一般接收Json。这个不困难,送给某些需要的人。

$.ajax({
url: "*****/Account/Login",
type: "POST",
data: JSON.stringify({UserName:'user1',Password:'123456'}),
contentType: "application/json; charset=utf-8",
dataType: "json",
error: function (response) {
console.log(response.responseText);
},
success: function (response) {
console.log(response);
}
});

参考http://stackoverflow.com/questions/21578814/how-to-receive-json-in-a-mvc-5-action-method-as-a-paramter 

 

3. 上传文件

webapi的文件上传和mvc不一样。

具体方式自己选择,可以参考

http://weblog.west-wind.com/posts/2012/Sep/11/Passing-multiple-simple-POST-Values-to-ASPNET-Web-API

 和

http://blogs.msdn.com/b/codefx/archive/2012/02/23/more-about-rest-file-upload-download-service-with-asp-net-web-api-and-windows-phone-background-file-transfer.aspx

 提醒一点,文件在controller里面必须使用[FromUri]属性,否则报错:

No MediaTypeFormatter is available to read an object of type 'HttpPostedFileBase[]' from content with media type 'multipart/form-data'.

 

 

如果选择使用js来上传,请参考

http://www.codeproject.com/Articles/806075/File-Upload-using-jQuery-AJAX-in-ASP-NET-Web-API

 apicontroller的request没有files这个属性,需要使用HttpContext.Current.Request.Files

目录
相关文章
|
25天前
|
SQL 小程序 API
如何运用C#.NET技术快速开发一套掌上医院系统?
本方案基于C#.NET技术快速构建掌上医院系统,结合模块化开发理念与医院信息化需求。核心功能涵盖用户端的预约挂号、在线问诊、报告查询等,以及管理端的排班管理和数据统计。采用.NET Core Web API与uni-app实现前后端分离,支持跨平台小程序开发。数据库选用SQL Server 2012,并通过读写分离与索引优化提升性能。部署方案包括Windows Server与负载均衡设计,确保高可用性。同时针对API差异、数据库老化及高并发等问题制定应对措施,保障系统稳定运行。推荐使用Postman、Redgate等工具辅助开发,提升效率与质量。
|
2月前
|
人工智能 芯片
D1net阅闻|OpenAI员工疯狂暗示,内部已成功开发ASI?被曝训出GPT-5但雪藏
D1net阅闻|OpenAI员工疯狂暗示,内部已成功开发ASI?被曝训出GPT-5但雪藏
|
3月前
|
开发框架 数据可视化 .NET
.NET 中管理 Web API 文档的两种方式
.NET 中管理 Web API 文档的两种方式
73 14
|
4月前
|
缓存 算法 安全
精选10款C#/.NET开发必备类库(含使用教程),工作效率提升利器!
精选10款C#/.NET开发必备类库(含使用教程),工作效率提升利器!
146 12
|
4月前
|
Linux API C#
基于 .NET 开发的多功能流媒体管理控制平台
基于 .NET 开发的多功能流媒体管理控制平台
86 9
|
4月前
|
Web App开发 前端开发 调度
一款基于 .NET + Blazor 开发的智能访客管理系统
一款基于 .NET + Blazor 开发的智能访客管理系统
|
4月前
|
前端开发 JavaScript C#
基于.NET8+Vue3开发的权限管理&个人博客系统
基于.NET8+Vue3开发的权限管理&个人博客系统
|
4月前
|
网络协议 C#
基于.NET WinForm开发的一款硬件及协议通讯工具
基于.NET WinForm开发的一款硬件及协议通讯工具
|
4月前
|
监控 前端开发 API
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统
116 5
|
5月前
|
开发框架 .NET 程序员
驾驭Autofac,ASP.NET WebApi实现依赖注入详细步骤总结
Autofac 是一个轻量级的依赖注入框架,专门为 .NET 应用程序量身定做,它就像是你代码中的 "魔法师",用它来管理对象的生命周期,让你的代码更加模块化、易于测试和维护
155 4
驾驭Autofac,ASP.NET WebApi实现依赖注入详细步骤总结
下一篇
oss创建bucket