Java Worklight:如何为WL.Client.InvokeProcess调用设置use addGlobalHeader
对于WorkLight应用程序,我没有看到一些cookie头被发送到服务器以进行基本的WL.Client.invokeProcess调用。如何正确添加cookie头?理想情况下,这些将是全局的,但我了解到使用WL.Client.addGlobalHeader(“Cookie”)可能会出现问题。程序) 这基本上是Javascript中的代码:Java Worklight:如何为WL.Client.InvokeProcess调用设置use addGlobalHeader,java,javascript,cordova,ibm-mobilefirst,Java,Javascript,Cordova,Ibm Mobilefirst,对于WorkLight应用程序,我没有看到一些cookie头被发送到服务器以进行基本的WL.Client.invokeProcess调用。如何正确添加cookie头?理想情况下,这些将是全局的,但我了解到使用WL.Client.addGlobalHeader(“Cookie”)可能会出现问题。程序) 这基本上是Javascript中的代码: var invocationData = { adapter : "data", procedure : procedure, he
var invocationData = {
adapter : "data",
procedure : procedure,
headers : { "Cookie", "CookieData=val" }
parameters : parms,
};
WL.Client.invokeProcedure(invocationData)
编辑:
“WL.Client.addGlobalHeader API将替换整个“Cookie”头并销毁会话状态。”目前无法将您自己的Cookie添加到Worklight请求中。正如您的编辑所说,使用addGlobalHeader()添加的任何Cookie头都将被替换为仅添加的Cookie头
已打开功能请求,以查看是否可以在未来版本中添加此功能。MFP 7.0.0添加了新的API- 用法示例:
WL.Client.setCookie({
名称:“cookieName”,
值:“cookieValue”,
域名:“google.com”,
路径:“/”,//所有路径
过期:0//永不过期
}).然后(函数(){
//回拨到这里
});
您能否详细说明“问题”的陈述?您是否尝试使用Wireshark检查网络流量,以查看cookie是否确实随您的请求一起发送?如果您使用document.cookie,则会随桌面浏览器版本一起发送。使用chrome浏览器进行测试。是的,因为cookie生成方式的实现因运行它们的操作系统而异;在浏览器中运行时,由于它不是一个生产环境,所以没有做多少工作;但是如果你在任何移动设备上运行它,它很可能会被替换。我想知道本机cookie管理器功能是否可用。例如,使用上面的Java/Android代码,我们可以设置cookies。另外,你知道关于这个问题的任何IBM文档吗?对不起,我刚才看到技术说明说document.cookie应该可以工作,但我认为这个技术说明是错误的;它将在浏览器中工作,但由于目前Worklight的实现方式,它不会在设备上工作。至少会保存cookie,例如,如果您查看设备上的cookie存储。也许没人送。