0

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


我在做什么 ?


在客户端。

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

在服务器端。

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

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

@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);
    }
}

谢谢你的支持...

4

1 回答 1

0

不幸的是,你不能。标准 WebSocket JavaScript API 不提供自定义 HTTP 标头的方法。另请参阅heroku 开发中心的此文档

于 2015-04-24T18:32:19.640 回答