这个问题弄了好久 一定要记下来
一般用ajax是不可能实现跨域问题的
这里就要用到 标签属性src=""
任何有src属性的标签 都可以跨域调用令一个域的后台
想src=http://i.joysys.com/index.aspx 就可以调用 i.joysys.com的index.aspx 页面了
但是虽然调用了 却做出返回 这就有看index.aspx页面的了
在index.aspx页面中 用
Response.Write("");
就可以做出输出 也就是返回啦
当然这跟标签有关系
比如你用 <script src=""> 标签的话
你在 index.aspx中 输出js语句
Response.Write("alert(‘返回’)");
这样 这段js是可以被执行的
但是 两个域的 js 变量 是不可以互用的 (至少 目前我测试时没有通过的)
这样要是 就需要返回一个值怎么办呢
我苦思冥想 也参考了别人的一些资料
终于被我发现 用 js
var im = new Image;
im.src = "index.aspx";
这样调用时有效果的
在index.aspx 页面做出
using System.Drawing;//基本绘图
using System.Drawing.Imaging;//处理图像
private void outWidth(int width, int hen)
{
Bitmap image = new Bitmap(width, hen);//定义图像
try
{
//输出图像
MemoryStream ms = new MemoryStream();
image.Save(ms, ImageFormat.Gif);//将图片保存到指定流
Response.ClearContent();//清楚缓冲区的流
Response.ContentType = "imge.Gif";//配置输出类型
Response.BinaryWrite(ms.ToArray());//输出内容
}
finally
{
image.Dispose();
}
}
输出一个图片
这个从这个中图片 你看到什么呢
哈哈
其实我是想利用这个的 width
当调用后 得到图片width 为 0 做相应操作
width 为 1 做相应操作
当然 如果单是这样调用的话
index.aspx 只是执行一次
当你要不停的 读后台 不停的刷新的时候你可能会想用到
window.setInterval(); 来时时调用就好了吗
答案是 NO~~~~~!!!!!!!!!!!!!!!!!!
这个问题ajax同样适用~~!
当src="index.aspx"值与上一次相同的话 将不执行 index.aspx 页面
直接返回上一次 执行的结果 。。。这可能是为了 不让服务器承受太大压力 所做的
但是 没关系 这怎么能难倒我呢 哼哼~~!
src="index.aspx?ids="+new Date().getTime();
这样的话 每次调用的值就都不同了 ~
index.aspx 每次都可以执行了
这样就成功解决了 跨域问题 哈哈哈哈
第一次处理完这种 我没有遇到过的 高技术的问题
弄了好久呀 不过这都是值得的 谢谢来看我博客的朋友 记得评论一下 呵呵 谢谢了