社区
基础编程
帖子详情
AJAX跨域访问难题
大白菜芯
2006-01-26 04:17:37
AJAX跨域访问难题
不多说了! 加上个帖子一共200 ,请强人指点一下。
那位有真正的解决办法。是不需要让用户更改IE或加什么信任域的。
...全文
668
6
打赏
收藏
AJAX跨域访问难题
AJAX跨域访问难题 不多说了! 加上个帖子一共200 ,请强人指点一下。 那位有真正的解决办法。是不需要让用户更改IE或加什么信任域的。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
大白菜芯
2006-01-29
打赏
举报
回复
问题已经解决!! 研究及翻阅了很多资料,AJAX跨域访问问题最终的答案好象应该是不可能!
无论如何,不可能是没有办法了.
但是我还是找出来一个好的办法.因为我需要解决的问题是用户认证的问题。我用了一个简单的办法.具体思路如下.
开始建立一个TABLE 然后包含一个FORM 这个TABLE 的STYLE 是 DISPLAY: NONE
然后在这个表中建立一个IFRAME 名字是ACT 它的TARGET是一个不存在的空白页面
然后在写一个JS, 内容就是FORM.SUBIMIT() 并将需要提交的内容可以提前放到上边的哪个FORM 中. 然后让脚本一出现就自动有提交操作.但是这个提交的TARGET是IFRAME的名字.
以上操作完成,就可以实现本页打开有一个隐藏的提交操作.而不刷新屏幕.
内容已经提交到指定的服务器方面,服务器方面根据需求生成一个.TXT 文件 放到服务器指定地方。
然后在用户方可以打开这个文件以获得服务器的返回内容.
我说的比较简单.
但是做出来的效果和AJAX 几乎是一样的.而且可控制性应该更好。
最后还是对AJAX 跨域访问问题表示遗憾. 破碎了很多梦想啊!! 哈.
大白菜芯
2006-01-26
打赏
举报
回复
l.php 文件如下:
<?
@header("Content-type: text/html; charset=utf-8");
function GetLicense (){
/**
* 这里是获得服务器返回资料!
*/
$Server = $_SERVER[HTTP_HOST]=='127.0.0.1' ? "localhost" : $_SERVER[HTTP_HOST] ;
$DateIs = date("Y-m-d",time());
$Script = "";
$Script .="
<script language=\"JavaScript\">
function GetResult(hostname,TheDate)
{
if (window.XMLHttpRequest) { // Mozilla, Safari, ...
http_request = new XMLHttpRequest();
} else if (window.ActiveXObject) { // IE
http_request = new ActiveXObject(\"Microsoft.XMLHTTP\");
}
var linkurl=\"http://localhost/s.php?serverhost=\"+hostname+\"&DateIs=\"+TheDate;
//alert(linkurl);
http_request.open('GET',linkurl,false);
http_request.send(null);
//通过XMLHTTP返回数据,开始构建Div.
//var returntxt=unescape(http_request.responseText)
var returntxt=http_request.responseText;
alert(returntxt);
BuildArrib(returntxt);
}
function BuildArrib(txt)
{
ajax_license.style.display='';
document.getElementById('ajax_license').innerHTML = txt;
}
</script>
<div id='ajax_license' style='display:none'> 111</div>
<script language=javascript>
GetResult('$Server','$DateIs');
</script>
";
return $Script;
}
echo GetLicense();
?>
s.php 如下:
<?php
error_reporting(7);
@header("Content-type: text/html; charset=utf-8");
$TheError_txt = "
<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"
\"http://www.w3.org/TR/html4/loose.dtd\">
<html>
<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">
<title>SmartShop</title>
</head>
<body>
$TheError
</body>
</html>";
function file_write($filename, $flag, $content) {
if (file_exists($filename)) {
if (!is_writable($filename)) {
if (!chmod($filename, 0777)) {
$TheError = "Cannot change the mode of file ($filename)";
return $TheError;
};
}
}
if (!$fp = @fopen($filename, $flag)) {
$TheError = "Cannot open file ($filename)";
}
if (fwrite($fp, $content) === FALSE) {
$TheError = "Cannot write to file ($filename)";
}
if (!fclose($fp)) {
$TheError = "Cannot close file ($filename)";
}
return $content;
}
echo file_write("1.txt","w",$TheError_txt);
?>
现在我的问题是。我没有办法输入L.PHP后,使得建立1.txt 文件。请问为什么!!
孟子E章
2006-01-26
打赏
举报
回复
http://www.xiacong.com/blogview.asp?logID=325
孟子E章
2006-01-26
打赏
举报
回复
跨域访问,一般需要这样:
将url传递到服务器端在服务器端取数据
或者采用欺骗的办法
bacp
2006-01-26
打赏
举报
回复
楼上说的,我看了一下,
所说的就是有一点像小偷一样
远程取得文件
再动态分析,静态加载
leihome
2006-01-26
打赏
举报
回复
成功实现ajax,xmlhttp跨域访问
http://www.sp1.cn/web/918.htm
浅谈
Ajax
跨域
Session和
跨域
访问
主要介绍了
Ajax
跨域
Session和
跨域
访问
的相关问题,以及需要注意的地方,这里推荐给大家
ajax
跨域
,这应该是最全的解决方案了.docx
ajax
跨域
,这应该是最全的解决方案了.docx
Ajax
实现
跨域
访问
的三种方法
本文给大家介绍了
ajax
实现
跨域
访问
的3种解决方案,非常的实用,个人比较推荐第三种,小伙伴们可以着重看下。
js解决
跨域
访问
问题
js解决
跨域
访问
问题,在用js
访问
web后台方法的时候,有时候会遇到
跨域
访问
的问题。文档中介绍了
跨域
访问
产生的原因以及相应的解决办法及代码示例。
js
跨域
和
ajax
跨域
问题的实现思路
大家都知道js是不能
跨域
的,但我们有时候就要这么用,怎么办呢?办法总是有的.
基础编程
21,893
社区成员
140,347
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章