如何从 JavaScript 客户端向 Jetty WebSocket 发送请求头 [英] How To Send Request Header To Jetty WebSocket From JavaScript Client

查看:87
本文介绍了如何从 JavaScript 客户端向 Jetty WebSocket 发送请求头的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何从 JavaScript 客户端向 Jetty WebSocket 发送请求头?

在客户端.

  1. 需要在客户端的请求头中添加服务名称和服务版本
  2. 发送到服务器

在服务器端.

  1. 从请求头识别服务
  2. 使用它创建相应的输入转换器(使用 GSON)
  3. 使用该翻译器创建服务输入
  4. 致电服务.

我可以使用 org.eclipse.jetty.websocket.api.annotations.WebSocket 作为在服务器端获取服务名称和版本.但是..... 如何在客户端设置头信息?

I can use org.eclipse.jetty.websocket.api.annotations.WebSocket as to get service name and version at server side. But..... How can I set the header information at client side?

@OnWebSocketMessage
public void onText(Session session, String message) {
    if (session.isOpen()) {
        System.out.println(session.getUpgradeRequest().getHeader("service"));
        System.out.println(session.getUpgradeRequest().getHeader("version"));

        System.out.printf("Echoing back message [%s]%n", message);
        session.getRemote().sendString(message, null);
    }
}

感谢您的支持...

推荐答案

很遗憾,您不能.标准 WebSocket JavaScript API 不提供自定义 HTTP 标头的方法.另请参阅 heroku 开发中心的本文档.

Unfortunately, you can't. The standard WebSocket JavaScript API does not provide means to customize HTTP headers. See also this document at heroku dev center.

这篇关于如何从 JavaScript 客户端向 Jetty WebSocket 发送请求头的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆