MVC+EF API 跨域
MVC+EF API --2
一、 MVC+EF
不管是MvcHAIS Ef 都有文件夹Controller
二、Link查询
多表联查
匿名类型
三、Postman使用
四、mvc访问使用API
跨域设置:(直接复制粘贴)
跨域请求(在UI层的Web.config 中<system.webServer>中的 </handlers> 下面)
<!--跨域请求:三个配置信息-->
<httpProtocol>
<customHeaders>
<!--响应类型 (值为逗号分隔的一个字符串,表明服务器支持的所有跨域请求的方法)-->
<add name="Access-Control-Allow-Methods" value="GET,POST,PUT,DELETE,OPTIONS"/>
<!--响应头设置(Content-Type:只限于三个值application/x-www-form-urlencoded、multipart/form-data、text/plain)-->
<add name="Access-Control-Allow-Headers" value="x-requested-with,content-type"/>
<!--如果设置 Access-Control-Allow-Origin:*,则允许所有域名的脚本访问该资源-->
<add name="Access-Control-Allow-Origin" value="*" />
<!--<add name="Access-Control-Allow-Origin" value="http://domain1.com, http://domain2.com" /> 设置允许跨域访问的网址-->
</customHeaders>
</httpProtocol>
跨域设置(UI层的Global.asax 中 直接粘贴到原本方法下面)
/// <summary>
/// 跨域设置
/// </summary>
protected void Application_BeginRequest()
{
//OPTIONS请求方法的主要作用:
//1、获取服务器支持的HTTP请求方法;也是黑客经常使用的方法。
//2、用来检查服务器的性能。如:AJAX进行跨域请求时的预检,需要向另外一个域名的资源发送一个HTTP OPTIONS请求头,用以判断实际发送的请求是否安全。
if (Request.Headers.AllKeys.Contains("Origin") && Request.HttpMethod == "OPTIONS")
{
//表示对输出的内容进行缓冲,执行page.Response.Flush()时,会等所有内容缓冲完毕,将内容发送到客户端。
//这样就不会出错,造成页面卡死状态,让用户无限制的等下去
Response.Flush();
}
}在MVC中
用ajax显示分页查询
<input type="text" id="SName" />
<select id="nclass">
<option>请选择</option>
</select>
<input type="button" value="查询" onclick="Show()" />
<table class="table table-hover">
<thead>
<tr>
<td>ID</td>
<td>学生姓名</td>
<td>班级</td>
</tr>
</thead>
<tbody id="tbd">
</tbody>
</table>
<a href="#" onclick="Page('F')">首页</a>
<a href="#" onclick="Page('N')">下页</a>
<a href="#" onclick="Page('P')">上页</a>
<a href="#" onclick="Page('L')">尾页</a>
<script>
var pageindex = 1;
var pagesize = 3;
var totalcount = 0;
var totalpage = 0;
var NId = "";
var SName = "";
$(function () {
Show();
nclass();
})
function Show() {
$.get('http://localhost:59125/api/Student/Show?NId=' + NId + '&SName=' + SName + '&pageindex=' + pageindex + '&pagesize=' + pagesize + '', res => {
//给总页数和总条数赋值
totalcount = res.totalcount;
totalpage = res.totalpage;
SName = $("#SName").val();
NId = $("#nclass").val();
$("#tbd").empty();
$(res.list).each(function () {
$("#tbd").append('<tr>' +
'<td>' + this.Id + '</td>' +
'<td>' + this.SName + '</td>' +
'<td>' + this.NName + '</td>' +
+'</tr>');
});
});
}
//分页
function Page(o) {
switch (o) {
case 'F':
pageindex = 1;
break;
case 'P':
pageindex = pageindex <= 1 ? pageindex : pageindex - 1;
break;
case 'N':
pageindex = pageindex >= totalpage ? pageindex : pageindex + 1;
break;
case 'L':
pageindex = totalcount;
break;
}
Show();
}
//下拉框
function nclass() {
$.get('http://localhost:59125/api/Student/nclass', res => {
$(res).each(function () {
$("#nclass").append(
'<option value="' + this.NId + '">' + this.NName + '</option>'
)
})
});
}
</script>
RESTful风格编写接口
Cors跨域
MVC+EF API 跨域的更多相关文章
- .net IIS MVC Rest api 跨域 PUT DELETE 404 无法使用问题解决方案
一.WebConfig配置法(system.webServer 重点是 httpProtocol handlers) http://www.jinxuliang.com/blog/article/re ...
- ASP.NET MVC中设置跨域
ASP.NET MVC中设置跨域 1.什么是跨域请求 js禁止向不是当前域名的网站发起一次ajax请求,即使成功respone了数据,但是你的js仍然会报错.这是JS的同源策略限制,JS控制的并不是我 ...
- js基础 js自执行函数、调用递归函数、圆括号运算符、函数声明的提升 js 布尔值 ASP.NET MVC中设置跨域
js基础 目录 javascript基础 ESMAScript数据类型 DOM JS常用方法 回到顶部 javascript基础 常说的js包括三个部分:dom(文档document).bom(浏览器 ...
- ASP.NET MVC 实现AJAX跨域请求方法《1》
ASP.NET MVC 实现AJAX跨域请求的两种方法 通常发送AJAX请求都是在本域内完成的,也就是向本域内的某个URL发送请求,完成部分页面的刷新.但有的时候需要向其它域发送AJAX请求,完成数据 ...
- 【转载】ASP.NET MVC设置允许跨域访问
默认情况下,浏览器端发送Ajax请求一般被禁止跨域访问,如A域名网站访问B域名网站的请求会被终止,在ASP.NET MVC项目中,我们可以配置相应的设置项,允许网站的接口跨域访问,主要需要设置Acce ...
- Web Api跨域访问配置及调用示例
1.Web Api跨域访问配置. 在Web.config中的system.webServer内添加以下代码: <httpProtocol> <customHeaders> &l ...
- vue使用axios调用豆瓣API跨域问题
最近做了一个vue小demo,使用了豆瓣开源的API,通过ajax请求时需要跨域才能使用. 封面.jpg 一.以下是豆瓣常用的开源接口: 正在热映 :https://api.douban.com/ ...
- ASP.NET MVC 实现 AJAX 跨域请求
ASP.NET MVC 实现AJAX跨域请求的两种方法 和大家分享下Ajax 跨域的经验,之前也找了好多资料,但是都不行,后来看到个可行的修改了并测试下 果然OK了 希望对大家有所帮助! 通常发送 ...
- Laravel API跨域访问的实现步骤
本篇文章给大家带来的内容是关于Laravel API跨域访问的实现步骤,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 服务器A请求服务器B的接口,那么一般会出现跨域问题. 1 XML ...
- web api 跨域请求,ajax跨域调用webapi
1.跨域问题仅仅发生在Javascript发起AJAX调用,或者Silverlight发起服务调用时,其根本原因是因为浏览器对于这两种请求,所给予的权限是较低的,通常只允许调用本域中的资源,除非目标服 ...
随机推荐
- Canvas布局下使用附加属性使控件岁鼠标移动
定义附加属性 public class MoveBehavior { public static readonly DependencyProperty IsMoveAbleProperty = De ...
- Spring @aspect
在 开发过程中,需要对每个 方法 执行时 进行日志 记录, 故而 整理一下, 有关 AOP 的 相关 知识点. 1. 切面类: @Aspect : 定义切面类, 加上 @Aspect,@Compo ...
- iptables( < deb ufw)
iptables其实不是真正的防火墙,可以把它理解成一个客户端代理,用户通过iptables这个代理,将用户的安全设定执行到对应的netfilter安全框架"中,netfilter位于内核空 ...
- Day23:个人小结的撰写&&对coderunner的熟悉
今日完成的任务: 1.完成个人小结的撰写 2.阅读Moodle文档,了解Moodle平台以及Moodle出题格式 明日计划: 1.撰写总报告中的结论 2.将插件安装完成 每日小结: 为了研究题库,特 ...
- SWUpdate(Suricatta) + Hawkbit Server
SWUpdate的详细介绍 https://community.nxp.com/pwmxy87654/attachments/pwmxy87654/imx-processors%40tkb/5632/ ...
- 小程序调用OCR识别操作的过程,特此记录。
bu废话,直接记录.(注:我用的是云调用!!!) 对于大家首次使用该操作时,推荐两位大佬的文章,大家完全可以看两位大佬的文章,一步一步来就可以实现. 第一个文章呢,先看这个 https://blog. ...
- 从零搭建hadoop集群之CentOS7配置网卡为静态IP
CentOS7默认网卡设备文件存放于 /etc/sysconfig/network-scripts/ CentOS7的网卡设备名称是 ifcfg-ens33 vim /etc/sysconfi ...
- linux下第三方库的配置和链接——以opencv为例
安装OpenCV(可参考链接) 下载source到 /usr/local/路径下 新建 /build/ cmake 编译 添加库路径 vim /etc/ld.so.conf 该目录作用参考链接 输入: ...
- Odoo编程,说明,功能,文章收藏贴
CN Blog: https://www.cnblogs.com/Firstwing/p/14088500.html #http://blog.sina.com.cn/s/blog_bc7dee2d0 ...
- 关于Java的惰性求值
最近在学scala的时候,函数传参可以是传名参数,或者传值参数 1.Scala中的传名参数是什么意思?lazy关键字有什么作用? Scala官方文档的定义是:传名参数 仅在被使用时触发实际参数的求值运 ...