MUI 跨域请求web api
由于刚接触MUI框架,所以在跨域问题上花了一点时间。希望我的方式能帮你少走点弯路(大神就直接过里吧)!
首先,遇到这个问题,各种百度。其中说法最多的是将mui,js文件里的 setHeader('X-Requested-With', 'XMLHttpRequest'); 注释掉。我这里没有将其注释,因为我相信,这个框架出来这么久了,不可能连这个问题都没处理吧(不跨域,自己玩???)。
前端部分代码:
//mui,js(Mui v3.7.0)
//------注意--------
//1、调试需要在真机环境进行操作;
//2、mui本身是支持跨域访问的(无需纠结跨域问题);
//3、请求API地址不能使用localhost 或者127.0.0.1之类的ip,只能使用实际的IP才能访问。
var reqRootUrl = "http://192.168.1.217";
mui.ajax({
url: reqRootUrl + '/api/UserLogin/QueryAccount',
data: {
AccountName: "***",
Pwd: "***",
Company: "***"
},
dataType: 'json',
type: 'post',
timeout: 30000, //超时时间设置为30秒;
headers: {
'Content-Type': 'application/json',
//"Authorization": "BasicAuth " + _ticket//传递基于“Basic基础认证”令牌
},
beforeSend: function () {
plus.nativeUI.showWaiting("正在请求数据...");//开启加载提示
},
complete: function () {
plus.nativeUI.closeWaiting();//关于加载提示
},
success: function (data) {
//处理成功逻辑
mui.openWindow({
url: 'defaule.html',
id: 'defaule.html',
extras: {
Ticket: data.Ticket//页面传递参数
},
waiting: {
autoShow: true, //自动显示等待框,默认为true
title: '正在登录...' //等待对话框上显示的提示内容
}
});
},
error: function (xhr, type, errorThrown) {
plus.nativeUI.closeWaiting();
var _error = "";
switch (type) {
case "timeout":
_error = "服务器响应超时";
break;
default:
_error = "异常信息:" + xhr.responseText;
break;
}
mui.toast(_error);
}
});
web api代码:
//注意:web api对应的函数不能设置为static类型,否则无法调用(这个算是自己开发过程遇到的一个小细节吧)
[HttpPost]
[EnableCors(origins: "*", headers: "*", methods: "*")]
public responseObj QueryAccount([FromBody]requestObj postJson)
{
responseObj rObj = new responseObj();
//to do logic
return rObj;
}
关于web api跨域的问题,这里不做详细说明,推荐一篇文章(这里已经很明细了)。
本文章会根据自己的开发过程,会做出适当更新。有什么不清楚的,可以直接留言给我。
MUI 跨域请求web api的更多相关文章
- $.ajax 跨域请求 Web Api
WepApi确实方便好用,没有配置文件,一个apicontroller直接可以干活了.但今天用$.ajax跨域请求的时候总是获取不到数据,用fiddler一看确实抓到了数据,但回到$.ajax函数中, ...
- jQuery跨域调用Web API
我曾经发表了一篇关于如何开发Web API的博客,链接地址:http://www.cnblogs.com/guwei4037/p/3603818.html.有朋友说开发是会开发了,但不知道怎么调用啊? ...
- angular2jsonp如何跨域请求百度API进行定位
前提,百度api的申请,不会的可以百度一下,下面是连接 http://lbsyun.baidu.com/index.php?title=webapi/ip-api 1.appMoudle里引入 imp ...
- mui 跨域请求
<ul class="mui-table-view" style="margin-top: 25px;"> <li class="m ...
- asp.net core 创建允许跨域请求的api, cors.
配置应用方域名. 在webapi中引用cors包,在startup的Configure\ConfigServices中增加启动项配置,在api中增加EnableCors的Attribute属性.即可. ...
- MUI跨域请求数据的例子:
<, , success: function(data) { ...
- jquery实现ajax跨域请求!亲测有效
在解决跨域的时候,我通常会用豆瓣api作为尝试. 下面是本地跨域请求豆瓣API:亲测有效: <script type="text/javascript"> var ur ...
- 基于.Net Framework 4.0 Web API开发(5):ASP.NET Web APIs AJAX 跨域请求解决办法(CORS实现)
概述: ASP.NET Web API 的好用使用过的都知道,没有复杂的配置文件,一个简单的ApiController加上需要的Action就能工作.但是在使用API的时候总会遇到跨域请求的问题,特 ...
- ASP.NET web api 跨域请求
1.学习文章:AJAX 跨域请求 - JSONP获取JSON数据 1.asp.net代码 参考文章:http://www.sxt.cn/info-2790-u-756.html (1).增加CorsH ...
随机推荐
- Kotlin 中类函数
在kotlin中函数可以在类外部定义也可以在类内部定义,前者即为全局函数,后者,是类成员函数,语法一样 package loaderman.demo class Person { fun demo(n ...
- Servlet的入门案例
编写入门案例 1)编写java类,继承HttpServlet类 2)重新doGet和doPost方法 3)Servlet程序交给tomcat服务器运行!! 3.1 servlet程序的class码拷贝 ...
- web worker 的 self
A self object, which is the global object representing the worker in this scope. 对self对象的译法,未知妥否. // ...
- Java使用jxl写入Excel文件
首先添加jxl的maven依赖: <!-- https://mvnrepository.com/artifact/net.sourceforge.jexcelapi/jxl --> < ...
- xampp 启动mysql 显示busy
1.端口被占用问题:2.默认3306端口并没有被占用:3.删除xampp\mysql\data\下的ibdata1再重启:4.没装其他mysql.
- css 边框和圆角
CSS3圆角 border-radius属性 一个最多指定四个border -*- radius复合属性,这个属性允许你为元素添加圆角边框 语法 border-radius:1-4 length|% ...
- (转载)如何创建一个以管理员权限运行exe 的快捷方式? How To Create a Shortcut That Lets a Standard User Run An Application as Administrator
How To Create a Shortcut That Lets a Standard User Run An Application as Administrator by Chris Hoff ...
- 利用matlab自带函数快速提取二值图像的图像边缘 bwperim函数
clear all;close all;clc; I = imread('rice.png'); I = im2bw(I); J = bwperim(I); % 提取二值图像图像边缘 figure ...
- logstash输出至elasticsearch
续上一篇 上一篇描述了通过logback配置用logstash收集springmvc项目日志,本文是描述如何进一步通过elasticsearch对所收集数据进行的分析. output { elasti ...
- 带你手写基于 Spring 的可插拔式 RPC 框架(五)注册中心
注册中心代码使用 zookeeper 实现,我们通过图片来看看我们注册中心的架构. 首先说明, zookeeper 的实现思路和代码是参考架构探险这本书上的,另外在 github 和我前面配置文件中的 ...