jquery ajax GET POST 跨域请求实现
同一段逻辑代码需要在多个网站中使用, 每个网站都新建一个ashx真是扯蛋的作法, 所以想只请求一处的ashx, 这样便于维护和修改, 那么,ajax跨域问题就来了。
废话少说, 直接上代码, 我现在做的是GET请求的。 POST请求同理。
首先整改ashx,加入支持跨域请求的代码。
context.Response.ContentType = "text/plain";
string active = context.Request.QueryString["active"]; string rs = "";
if (active == "")
{
string oid = TGM.BaseOpera.String.replacesql(context.Request.QueryString["oid"]);
if (!string.IsNullOrEmpty(oid))
{
tansar.BLL.order tbo = new tansar.BLL.order();
string flag = tbo.GetSID(oid);
if (flag != "")
rs = "ok";
}
}
#region 支持跨域请求
context.Response.ClearHeaders();
string origin = context.Request.Headers["Origin"];
context.Response.AppendHeader("Access-Control-Allow-Origin",string.IsNullOrEmpty(origin) ? "*" : origin);
string requestHeaders = context.Request.Headers["Access-Control-Request-Headers"];
context.Response.AppendHeader("Access-Control-Allow-Headers",string.IsNullOrEmpty(requestHeaders) ? "*" : requestHeaders);
context.Response.AppendHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS");
#endregion context.Response.Write(rs);
然后ajax中的js方法:
function getFlag(d) {
$.ajax({
type: "get",
async: false,
url: "http://www.8kmm.com",
data: d,
dataType: "text",
success: function (data) {
if (data == "ok") {
location.href = "/user/orderdetail.aspx?oid=<%=Onumber %>"; }
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("请求数据异常:" + errorThrown);
}
});
}
做前端开发, 浏览器的开发者工具能帮大忙, 比如webkit内核的, ff的。
jquery ajax GET POST 跨域请求实现的更多相关文章
- jQuery ajax的jsonp跨域请求
一直在听“跨域跨域”,但是什么是跨域呢?今天做了一些了解.(利用jQuery的jsonp) jQuery使用JSONP跨域 JSONP跨域是利用script脚本允许引用不同域下的js实现的,将回调方法 ...
- JQuery - Ajax和Tomcat跨域请求问题解决方法!
在JQuery里面使用Ajax和Tomcat服务器之间进行数据交互,遇到了跨域请求问题,无法成功得到想要的数据! 错误信息部分截图: 通过错误信息判断知道已经发生在Ajax跨域请求问题了! 当前Tom ...
- js中ajax如何解决跨域请求
js中ajax如何解决跨域请求,在讲这个问题之前先解释几个名词 1.跨域请求 所有的浏览器都是同源策略,这个策略能保证页面脚本资源和cookie安全 ,浏览器隔离了来自不同源的请求,防上跨域不安全的操 ...
- 原生js封装ajax,实现跨域请求
描述: 需要ajax跨域请求,用cors跨域方案.服务端设置: header('Access-Control-Allow-Origin: http://front.ls-la.me'); header ...
- (转)jquery ajax使用及跨域访问解决办法
原文地址:***/UIweb/jquery_ajax_kuayujiejue.html 最近开发中,设计到智能手机项目,给领导做几个demo.主要是用jquery和jqeury mobile. 越来越 ...
- JavaScript JSON AJAX 同源策略 跨域请求
网页和Ajax和跨域的关系 1 Ajax使网页可以动态地.异步地的与服务器进行数据交互,可以让网页局部地与服务器进行数据交互 2 Ajax强调的是异步,但是会碰到跨域的问题. 3 而有很多技术可以解决 ...
- ajax jsonp的跨域请求
1.页面ajax的请求 $.ajax({ async: false, url: 'http://localhost:8080/downloadVideos',//跨域的dns/document!sea ...
- C# WebClient、jQuery ajax jsonp实现跨域
WebClient 无传输数据获取 Uri uri = new Uri(allURL); WebClient wc = new WebClient(); wc.Encoding = System.Te ...
- PHP AJAX JSONP实现跨域请求使用实例
在之前我写过“php返回json数据简单实例”,“php返回json数据中文显示的问题”和“在PHP语言中使用JSON和将json还原成数组”.有兴趣的童鞋可以看看 今天我写的是PHP AJAX JS ...
随机推荐
- Jsp helloWorld
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEnco ...
- 【hadoop】mapreduce原理总结
看了两天的各种博客,终于把MapReduce的原理理解了个大概.花了1个小时画了个流程图.大家看看,有不对的地方欢迎指正. 关键步骤: Map, Reduce就不多说了.记录一下我看了很久的部分: 1 ...
- copy
拷贝文件,不覆盖重复文件 yes no|cp -i a b
- 创建CancellationTokenSource对象用于取消Task
虽然使用线程池ThreadPool让我们使用多线程变得容易,但是因为是由系统来分配的,如果想对线程做精细的控制就不太容易了,比如某个线程结束后执行一个回调方法.恰好Task可以实现这样的需求.这篇文章 ...
- lintcode:将二叉查找树转换成双链表
题目 将一个二叉查找树按照中序遍历转换成双向链表 给定一个二叉查找树: 4 / \ 2 5 / \ 1 3 返回 1<->2<->3<->4<->5. ...
- HBase使用场景和成功案例
1 典型互联网搜索问题:BigTable发明的原因 搜索使用场景 1) 爬虫持续不断地抓取新页面,这些页面每页一行地存储到HBase里. 2 )MapReduce计算作业运行在整张表上,生成索引,为网 ...
- Oracle创建用户并赋予权限
1 CREATE USER username IDENTIFIED BY password; --这个是创建用户(这是最简单的创建语句没有指定表空间) 1 GRANT CREATE SESSION T ...
- MyBatis学习总结_11_MyBatis动态Sql语句
MyBatis中对数据库的操作,有时要带一些条件,因此动态SQL语句非常有必要,下面就主要来讲讲几个常用的动态SQL语句的语法 MyBatis中用于实现动态SQL的元素主要有: if choose(w ...
- CentOS 加载/挂载 U盘
1.以root用户登陆 先加载USB模块 modprobe usb-storage 用fdisk -l 看看U盘的设备 假如U盘是sda1 2.确定在 目录 /mnt 下建立了 文件夹 ...
- Java:抽象类abstract和接口Interface
一.抽象类:abstract 抽象类就是为了继承而存在的,如果你定义了一个抽象类,却不去继承它,那么等于白白创建了这个抽象类,因为你不能用它来做任何事情.对于一个父类,如果它的某个方法在父类中实现出来 ...