我已经在主页和社区中向IBM Connections(4.0和4.5)添加了第三方小部件,它们会导致页面在小部件完成加载后进入重定向循环。
我尝试了许多不同的安全和窗口小部件设置,却无法删除此行为。
症状 - 当页面上加载第三方窗口小部件时,页面将进入重定向循环。 - 在主页 - 它获得302重定向到" GET /homepage/web/authredirect.action HTTP / 1.1" - 在社区中 - 它获得302重定向到" GET / communities / service / html / login HTTP / 1.1"
在这两种情况下,重定向到的页面都会发现您实际经过身份验证,并且您被重定向回原始页面。
之前有没有人经历过这样的事情并且知道如何修复它?
答案 0 :(得分:1)
我已经看到当iWidget使用Dojo执行 handleAs =" json" 的请求时会发生这种情况。 相反,使用 handleAs =" text" ,然后使用dojo.fromJson(dataStr)将字符串解析为json对象。
例如,以下内容对我造成了重新加载问题:
var xhrArgs =
{
url:'/MyServlet',
content:{Id:this.userId},
handleAs:"json",
load:dojo.hitch(this,function(jsonObj){
console.log("json",jsonObj);
}),
contentType: "application/x-www-form-urlencoded; charset=utf-8"
};
dojo.xhrGet(xhrArgs);
将句柄更改为' text'用dojo.fromJson()调用解决了问题:
var xhrArgs =
{
url:'/MyServlet',
content:{Id:this.userId},
handleAs:"text",
load:dojo.hitch(this,function(data){
var jsonObj = dojo.fromJson(data);
console.log("json",jsonObj);
}),
contentType: "application/x-www-form-urlencoded; charset=utf-8"
};
dojo.xhrGet(xhrArgs);