代码之家  ›  专栏  ›  技术社区  ›  serginhofogo

如何在IBM Worklight上使用window.open函数?

  •  0
  • serginhofogo  · 技术社区  · 10 年前

    我使用此代码在我的应用程序上显示另一个页面

    var myURLS =JSON.stringify(result.invocationResult.data);
    window.open(myURLS , '_blank');     
    

    myURLS上的URL是:

    https://ectest556ws1:9444/teamworks/process.lsw?zWorkflowState=1&zTaskId=108351&zResetContext=true
    

    但我的应用重定向到

    http://10.0.176.232:10080/BPMtest/apps/services/preview/test/common/0/default/%22https://ectest556ws1:9444/teamworks/process.lsw?zWorkflowState=1&zTaskId=108351&zResetContext=true%22
    

    它显示

    Error 404: SRVE0295E: Error notificado: 404
    

    在我的移动应用内浏览器上

    1 回复  |  直到 10 年前
        1
  •  0
  •   Mike    10 年前

    result.invocationResult.data在您的案例中已经是字符串。当您通过JSON.stringify()运行它时,它会在它周围添加引号。这会导致字符串被编码为相对URL,而不是用作绝对URL

    相反,请尝试:

    window.open(result.invocationResult.data , '_blank'); 
    

    提到 Mozilla Developer Network 有关JSON.stringify的文档