简单web api跨域调用案例

来源:互联网 发布:淘宝购买店铺 编辑:程序博客网 时间:2024/05/17 01:36

我使用的是VS2017

新建项目ASP.NET Web应用程序(.NET Framework)模板为空的Web Api  如下图:

创建web api控制器 右击Controllers文件夹-添加-控制器-web api控制器  控制器名称以Controller结尾

接下来在控制器中写入方法

方法名称要以get/post/put/delete开头

•根据传入的请求URLHTTP动词(GET/POST/PUT/DELETE),Web API决定执行哪个Web API控制器和操作方法。
•Get()方法将处理HTTP GET请求。
•Post()方法将处理HTTP POST请求。
•Put()方法将处理HTTP PUT请求。
•Delete()方法将处理HTTP DELETE请求。

如果前端使用get请求方式调用web api方法  则会自动调用以get开头的方法
若是传过来有参数,则会调用符合参数类型和个数的get方法,其他请求方式也是如此

服务端就算简单写完了

但是要跨域调用还要更改一下配置

在服务端的web.config中<system.webServer>标签中插入一段代码 如下图:

在控制器中加入一个方法 如下图:

接下来创建客户端

新建项目ASP.NET Web应用程序(.NET Framework)模板为空 

然后右击添加一个web窗体,

(mvc视图也可以)

设计代码如下

 使用jQuery调用web api方法

如果服务端发布出去了,可以直接执行客户端

如果没有,需要先执行服务端 即web api 不要关闭,然后在执行客户端

上面Ajax的地址是执行服务端后从地址栏拿的端口号+api+控制器名称

CTRL+F5执行服务端,结果如图,正常

最终点击按钮调用方法结果如图