Scala 播放带有自定义错误代码的框架WebSocket拒绝连接

Scala 播放带有自定义错误代码的框架WebSocket拒绝连接,scala,websocket,playframework,Scala,Websocket,Playframework,此CloseEvent是当用户没有有效的许可证或会话过期时,我从服务器返回的内容 def socket: WebSocket = { WebSocket.acceptOrResult[Message, Message] { implicit request: RequestHeader => serviceUserIdentity.getUserIdentity(request) map { case Some(userIdentityPlay) if

CloseEvent
是当用户没有有效的许可证或会话过期时,我从服务器返回的内容

def socket: WebSocket = {
    WebSocket.acceptOrResult[Message, Message] { implicit request: RequestHeader =>
      serviceUserIdentity.getUserIdentity(request) map {
        case Some(userIdentityPlay) if userIdentityPlay.hasValidLicense =>
          Right(
            ActorFlow.actorRef(out =>
              ActorWSServer.props(out)
            )
          )
        case Some(_) =>
          Left(Results(4403)) //invalid user
        case None =>
          Left(Results(4401)) //session expired
      } recover {
        case exception: Exception =>
          Left(InternalServerError)
      }
    }
  }
看起来Http代码(4403)被覆盖为1006

我期待的结果是:

CloseEvent {isTrusted: true, wasClean: false, code: 1006, reason: "", type: "close", …}
WebSocket.accept中是否有实现此目的的方法?
或者使用
play.api.http.websocket.CloseMessage解决问题

基于此,我认为这可能是一个正在运行的bug,看起来1006永远不应该返回。基于此,我认为这可能是一个正在运行的bug,看起来1006永远不应该返回。
CloseEvent {isTrusted: true, wasClean: false, code: 4403, reason: "", type: "close", …}