【发布时间】:2015-07-08 12:57:53
【问题描述】:
在 setinterval 循环中尝试加载变量后,php 阻止 as3。我想标题说明了一切。实际上我有使用 URLLoader 来获取一些 php 变量的 flash 小部件,它工作得很好,但是这个 urlloader 处于 setinterval 循环中,每 2 分钟发生一次问题是它可以工作好几次,然后在 php 阻止加载变量的 ip 之后(使用 Flash 小部件)并且没有响应。我试图搜索这个主题,但没有发现什么特别是闪存已经过时,但我正在使用这个闪存,它不支持除了闪存没有 js ......我知道到底是什么问题,但我觉得它是服务器端问题和我知道如何解决它。想在这里分享我的问题,也许有人可以提供帮助。顺便说一句,它会阻止长时间使用闪存的用户的 ip,但不是全部,而是在 2-3 分钟后再次解锁 ip 并再次工作
顺便说一句,当我的 ip 被 php 阻止时,我得到这个错误作为 flash 返回:
2101:传递给 URLVariables.decode() 的字符串必须是包含名称/值对的 URL 编码查询字符串。
通过搜索发现这意味着flash没有从php请求中得到任何返回。
as3 代码就这么简单:
submit_btn.addEventListener(MouseEvent.CLICK, btnDown);
function btnDown(event:MouseEvent):void {
var variables:URLVariables = new URLVariables();
var varto:URLRequest = new URLRequest("http://url/dir/script.php");
varto.method = URLRequestMethod.POST;
varto.data = variables;
var varLoader:URLLoader = new URLLoader;
varLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
varLoader.addEventListener(Event.COMPLETE, completeHandler);
variables.somecode = "code";
varLoader.load(varto);
function completeHandler(event:Event):void{
var Var1fromphp = event.target.data.var1ofphp;
var Var2fromphp = event.target.data.var2ofphp;
from1_txt.text = Var1fromphp;
from2_txt.text = Var2fromphp;
trace("traced:" + event.target.data);
}
}
感谢并感谢所有回复/支持
【问题讨论】:
-
一个代码示例将添加有用的上下文
-
添加了代码示例
-
可能会调整服务器,使其不会在连续多次请求后阻止客户端 IP。
-
@WildLion 我认为服务器不会阻止您每 2-3 分钟发送一次的请求。您是在本地服务器还是在线服务器上尝试您的代码?你能告诉我们你的php代码吗?如果您的测试在在线服务器上,是否有可能放置您的测试 URL? ...
标签: php actionscript-3 block