【问题标题】:How to authenticate user using Starscream如何使用 Starscream 对用户进行身份验证
【发布时间】:2018-12-08 06:38:36
【问题描述】:

我陷入了用户身份验证;我想通过用户名和密码对用户进行身份验证。

我确实通过 websocket 成功连接,但我不知道如何验证用户身份我尝试通过谷歌进行大量研究,但由于完成的工作数量较少,我仍然无法实现我的目标。

我想通过 JSON 请求的服务器 API:

{ “UserName”: “UserName”, “Password”: “Password” } 

请求后服务器响应也是 JSON,请有人帮我实现这一点。非常感谢。

基本上我是 Swift 4 中的 WebSocket 的新手,这就是为什么我在使用 Starcream 的 cocoapods 时遇到很多问题。

提前致谢。

【问题讨论】:

  • 有人告诉我吗?到现在都没有反应。请帮帮我。
  • 只有当您在请求标头中使用 Cookie: sesionid=11111 之类的东西对自己进行身份验证时,服务器端才能像往常一样接受 WebSocket 连接。在打开的 websocket 连接中进行身份验证很奇怪。您能否提供有关 API 的更多信息以进行身份​​验证。因为这里没有说应该在哪里张贴
  • 你解决了吗?

标签: swift websocket starscream


【解决方案1】:

这是使用 Starscream 进行基本身份验证的示例:

//Prepare autorization data
    let authString: String = "\(userName):\(password)"        
    let base64String = authString.data(using: String.Encoding.utf8)!.base64EncodedString()

    // Prepare request and set headears for Basic Authorization
    var request = URLRequest(url: URL(string: SERVER_URL)!)
    request.setValue("Basic \(base64String)", forHTTPHeaderField: "Authorization")

    //Initiate websocket
    socket = WebSocket(request: request)
    socket?.advancedDelegate = self
    socket?.connect()

如果您得到“无效的 http 升级”结果,请确保您提供正确的用户名和密码。

【讨论】:

    猜你喜欢
    • 2021-07-26
    • 2019-05-02
    • 2013-01-19
    • 2012-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-10
    相关资源
    最近更新 更多