AS3 sendToURL在Firefox中工作但不在IE或Chrome中工作

时间:2011-12-28 16:51:42

标签: actionscript-3

我正在为我的网站建立一个登录页面。现在它很简单,但它似乎只适用于Firefox,我不知道为什么。这是它似乎破裂的地方。代码将用户的登录信息发送到login.php,最终将其与数据库一起检查,然后将用户发送到欢迎页面。用户进入欢迎页面,但当用户使用Chrome或IE时,信息似乎永远不会发送到login.php。

    public function log():void
{
    u=user.text.toLowerCase();
    p=pass.text.toLowerCase();

    var urlVariables:URLVariables = new URLVariables;
    urlVariables.userName = u;
    urlVariables.password = p;

    var urlRequest:URLRequest = new URLRequest("mysite/login.php");
    urlRequest.data = urlVariables;


    sendToURL(urlRequest);

    navigateToURL(new URLRequest("mysite/welcome.html"), "_self");

}

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

发送登录请求后,您可能会立即离开吗? 在中止所有内容并转到“welcome.html”之前,IE可能没有“足够快”发送请求。

您可能希望将“navigateToURL”部分放在侦听器中以响应登录处理程序 - 但要注意它可能被视为安全问题。

最好是使用数据导航到登录处理程序,并将“login.php”页面重定向到“welcome.html”。这将完成工作并避免使用荒谬的Flash安全模型带来任何令人不快的意外。

答案 1 :(得分:0)

发送http请求操作将压缩as3低级代码执行。 例如:URLLoader.load()方法。

如果同时调用此函数两次,

URLLoader.load(new URLRequest(sitea));
URLLoader.load(new URLRequest(siteb));

有些时候也会丢失!

我认为这是AS3的低级别问题,或错误或安全限制。