gpt4 book ai didi

ios - 没有挑战的登录表单(适配器)

转载 作者:行者123 更新时间:2023-11-29 01:40:36 29 4
gpt4 key购买 nike

我正在尝试在 native iOS 应用程序中实现基于表单的身份验证,但我需要在没有收到质询的情况下登录,我想打开一个表单并登录。我实现了一个包含 isCustomResponse 函数的 ChallengeHandler 类。在此函数中,我检查了响应是否包含 (j_security_check),以便判断响应中是否存在质询。

我有两个问题:

  1. 为什么我没有收到来自服务器的挑战?我尝试调用许多 protected 适配器,但从未收到包含 j_security_check 的响应。
  2. 当我尝试通过调用 submitLoginForm 毫无疑问地登录时,我从服务器收到一个错误,为什么我会收到这个错误,我该如何解决?

Exception thrown by application class 'com.worklight.core.auth.impl.AuthenticationFilter.doFilter:241'

java.lang.RuntimeException: com.worklight.gadgets.GadgetRuntimeException: Invalid gadget request format: /iOSNativeAPI/iOSnative/0/j_security_checknull. Unknown handler path: j_security_check

编辑:

我正在使用的环境是 swift 1.2,本地应用程序的 xCode 6.4,我正在集成的 Worklight 登台服务器是 6.1,在服务器上部署本地 API 后,我尝试使用以下领域登录称为“LDAPRealm”,如果在扩展 ChallengeHandler 类后键入 MyChallengeHandler,我会为此领域创建一个挑战处理程序:

var ldapAuthChallengeHandler1 = MyChallengeHandler(realm: "LDAPRealm")

我想在不响应质询的情况下登录,所以我从创建的质询处理程序中调用了 submitLoginForm 函数:

ldapAuthChallengeHandler1.submitLoginForm("j_security_check", requestParameters: ["j_username": "xxxxx@gmail.com", "j_password": "11111111"], requestHeaders: nil, requestTimeoutInMilliSeconds: 0, requestMethod: "POST")

但是,我收到了错误消息,我不知道为什么。

最佳答案

基于表单的身份验证不支持抢先式身份验证。这意味着您只能通过挑战的响应登录。

关于为什么你的挑战没有被调用,很难用提供的信息来判断。

检查 Wireshark,将日志放在各处,看看您是否收到挑战。也可以提供您的 authenticationConfig。

关于ios - 没有挑战的登录表单(适配器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32434745/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com