ajax跨域方法
昨天看了篇不是很严谨的博文《一个算命小偷程序的诞生》,里面写了一个通过AJAX偷窃别人网站算法的方法。实践了一下根本不行,AJAX似乎不能跨域。
后来我想了一些解决方法,终于跨域成功。现在公布一下方法。
任务:在自己网站做个表单,向【就爱算命网】提交请求,然后将【就爱算命网】的算命结果显示在自己的网站上。
思路:既然跨域不行,就不跨域呗。
我发现这个网站用http://www.92suanming.com/ ajax/suanming.ashx这个文件处理GET请求,然后返回算命结果。那么我们只需在自己的网站上也建立个suanming.ashx文件,然后写入以下代码就不必跨域啦。
string btd=Request.Form["btd"].ToString();//在本地获取生日
string url="http://www.92suanming.com/ ajax/suanming.ashx?&gender='1'&btd='"++btd"'";
WebRequest wrq;
HttpWebResponse wrp;
wrq=HttpWebRequest.Create(urls);
wrp=(HttpWebResponse)wrq.GetResponse();
Stream resStream=wrp.GetResponseStream();
StreamReader sr = new StreamReader(resStream, System.Text.Encoding.Default);
string tempstr = sr.ReadToEnd();
Response.Write(tempstr);
这样我们的suanming.ashx与【就爱算命网】的suanming.ashx有了相同的功能。
前台页面向自己的suanming.ashx提交请求就可以了。
相关文档:
有很久一段时间我的BLOG上没有出现AJAX相关讯息了,主要当然是因为绝大部分的重心都放到了Silverlight身上(可预期的未来应该也会是如此)。
但由于工作上的需要,最近还是回头看了一下即将推出的ASP.NET Ajax Library...,顺便找了一下网络上的讯息,看这个态势我猜想应该不少ASP.NET开发人员忽略掉了这个其实已经bet ......
Client端
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<script language="javascript">
var XmlHttp=new ActiveXObject("Microsoft.XMLhttp");
function sendAJAX()
{
&nb ......
到最后我才发现微软给的ajax json 实例都是有问题的,很多都是不严密的,特别是对于大小写方面,他们都没有仔细追究大小写问题,导致了在firefox使用有问题。下面是实例内用:两个html之间的:
<head> <title>测试ajax</title> <meta http-equiv=”Content-Type” content=”text/ht ......
ajax请求不返回html代码的三种方式
ajax请求代码:
function ajaxSend() {
$.ajax({
url: “Test_Ajax.aspx”,
type: “post”,
data: { name: “ajax” },//如果请求的自身页面,为了在后台判断是不是ajax请求
error: function(xhr, textStatus, errorThown) {
alert(errorThown) ......
1、ajax技术的背景
不可否认,ajax技术的流行得益于google的大力推广,正是由于google earth、google suggest以及gmail等对ajax技术的广泛应用,催生了ajax的流行。而这也让微软感到无比的尴尬,因为早在97年,微软便已经发明了ajax中的关键技术,并且在99年IE5推出之时,它便开始支持XmlH ......