【问题标题】:Worklight Adapter Basic Authentication Caching?Worklight 适配器基本身份验证缓存?
【发布时间】:2013-02-12 17:18:01
【问题描述】:

我在使用 Worklight 适配器进行基本身份验证时遇到问题。每当我对 REST URL 进行身份验证时,它都会很好地进行身份验证。但是,身份验证似乎在 Worklight 服务器内创建了一个会话。

调用示例

function getTaskList(username,password) {

    var input = {
        method : 'post',
        returnedContentType : 'json',
        path : 'rest/url',
        headers: {
            'Authorization': 'Basic '+base64Encode(username+':'+password),
        }   
    };

    return WL.Server.invokeHttp(input);
}

每当我尝试从其他设备登录时,Worklight 服务器都会认为我已经登录。您能否关闭 Worklight 服务器中的会话支持或阻止缓存?我想每次都对 REST URL 进行身份验证。这怎么可能?

【问题讨论】:

    标签: javascript json adapter ibm-mobilefirst


    【解决方案1】:

    在适配器 XML 文件的 <procedure> 元素中,您应该添加 connectAs="endUser"。将使用用户的身份创建与后端的连接。

    对不起,我没听懂您的问题。

    为了每次验证您需要在适配器 XML 文件中的 connectionPolicy 中进行身份验证,您需要更改您的cookiePolicy 属性为IGNORE_COOKIES

    <connectionPolicy xsi:type="http:HTTPConnectionPolicyType" cookiePolicy="IGNORE_COOKIES" maxRedirects="int"></connectionPolicy>
    

    【讨论】:

    • 这不起作用。 Worklight Server 正在为第一个用户存储一个 JSESSIONID。当发出另一个 getTaskList('user2','password2') 时,Worklight Server 仍会从原始用户返回任务(以 JSON 格式)。只是为了确保在 Worklight Studio 中重新部署了适配器。所有调用均来自 RunAs->Worklight Procdure。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-02
    相关资源
    最近更新 更多