Visualize.js 第二次登录后验证错误

Visualize.js authentication error after second login

我有一个网站——利用 Visualize.js——具有简单的 login/logout 功能。每次登录时,我都会调用 authenicateUser() 函数并注销 destroySession()。当我尝试登录然后注销然后再次登录时,当我尝试呈现我现有的报告时我得到了这个抛出的错误:

HTTP Status 401 - Full authentication is required to access this resource

函数authenicateUser()destroySession()如下所示:

function authenticateUser () {
    var myConfig = {
        auth : {
            name     : "superuser",
            password : "superuser"
        }
    };
    visualize.config( myConfig );
}

function destroySession() {
    visualize( function ( v ) {
        // Logout form JRS and finish the session.
        v.logout().done( function () {
        } );
    } )
}

我想指出的是,当我第一次登录我的帐户时,并没有抛出这个错误并且完美地呈现了报告。

为什么注销后重新登录会出现这种情况?

这似乎对我有用。所以我首先调用 visualize.config( config ) 以便我可以存储通用配置,以便在可视化调用之间共享它们,然后调用登录方法以便我可以使用提供的 auth 对象执行身份验证。我的参考:http://community.jaspersoft.com/wiki/visualizejs-api-notes-and-samples-v56

        visualize.config( config );
        visualize( function ( v ) {
            v.login( config );
        } );

虽然他们的文档中没有这个解决方案,但我把它们一点一点地解决了问题。

文档包含此问题的解决方案,尽管不是很明确。请参阅文档 link

中的示例代码和示例 link
visualize.config({
  auth: {
      name: "superuser",
      password: "superuser"
  }
});

Share common config between 'visualize' calls

请注意: 实际上,当您登录时,您需要在某些适当的事件中注销。这取决于您的应用要求,例如如果您要将报告嵌入现有的 Web 应用程序,link 现有应用程序 login/lougut

似乎更合适