2010-02-16 31 views
1

嗨,我通过的URLRequest发送用户ID如下面的代码获取变量,我怎样才能找回我完成的URLRequest Flex中

var urlStr:String = "http://[server]/main.jsp";
var urlReqest:URLRequest= new URLRequest(urlStr); var variables:URLVariables = new URLVariables(); variables.userID = 12;
urlReqest.method = URLRequestMethod.POST; urlReqest.data = variables;
navigateToURL(urlReqest,"_blank");

现在,当新的窗口,在新的SWF被打开时开启(新项目),这也仅限于flex。在那里我只需要在初始化时检索userID。我如何检索? 如果有人可以帮助它将会有所帮助。 在此先感谢。

回答

2

在Flex 4中,你可以使用

if (FlexGlobals.topLevelApplication.parameters.hasOwnProperty("userID")) 
{ 
    userID = FlexGlobals.topLevelApplication.parameters.userID; 
} 

在Flex 3,你可以使用

if (mx.core.Application.application.parameters.hasOwnProperty("userID")) 
{ 
    userID = mx.core.Application.application.parameters.userID; 
} 
+0

这是解决方案的一部分。您将无法从Flex读取POST标题。 – adamcodes

+0

嗨贾森W,感谢您的信息,当我张贴用户ID到jsp出导航,我通过urlRequest发送我使用request.getparameter(“Userid”);像这样我回想起来,但在jsp中它获得空值。我需要在jsp中使用哪种方法?请给我建议。 – praveen

+0

好吧我知道了,我怎么能给宽度和高度navigateToURL(urlReqest,“_ blank”);打开一个窗口。它打开整个窗口,但我需要打开widh = 999和高度= 608.感谢提前。 – praveen

2

,你将不得不重新编写JSP页面的POST值写入Flash变量参数。 Flex应用程序无法访问POST变量。

一旦他们通过网页上的Flash变量传递的,你可以使用贾森W公司的方法对阅读它们:

if (mx.core.Application.application.parameters.hasOwnProperty("userID")) 
{ 
    userID = mx.core.Application.application.parameters.userID; 
} 
+0

嗨,亚当,我需要张贴变量到JSP.but当我张贴通过var urlStr:String =“http:// [server] /main.jsp”; var urlReqest:URLRequest = new URLRequest(urlStr); var变量:URLVariables = new URLVariables(); variables.userID = 12; urlReqest.method = URLRequestMethod.POST; urlReqest.data =变量;像这个JSP一边,当我retrive request.getParameter(“UserId”);空值显示。我可以在JSP中检索用户ID吗? 请提前帮助我。 – praveen

+0

我没有做太多与JSP,但用request.getParameter似乎是正确的。在你的评论中,你正在用userID混合大小写。你的代码是否一致?即你是否发送和检索用户ID没有大小写变化? – adamcodes