问题标签 [autobahn]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
836 浏览

android - 高速公路不适用于tomcat 7 websocket

对不起我的英语不好。

我想在 Android 中编写一个本机应用程序来连接服务器以进行交互式通信。Websocket 技术是完美的。我已经在我的笔记本电脑上安装并运行了 Tomcat 7.0.39,IP 为 192.168.1.250。我已经尝试了示例 echo、snake 等,使用 ws://localhost:8080/.... 和使用 ws://192.168.1.250:8080/...

我正在使用带有 eclipse 的高速公路连接到我的服务器。我已经在我的 Android 手机中安装了带有高速公路客户端 websocket 示例的 apk,它与 ws://echo.websocket.org 完美连接。

问题是从 android 到我的服务器(在我的笔记本电脑中)不起作用。从 android 到 ws://echo.websocket.org 运行良好(我认为高速公路示例运行良好),我的服务器运行良好,因为 de 示例附带 tomcat 运行良好。

因为我必须对在服务器和客户端之间传输的信息进行深入的工作,所以我不能在服务器端使用 javascript,我需要 java servlet 或其他人来处理数据库、文件等等。

怎么了?防火墙已关闭,wireshark 向我展示了 android 客户端如何尝试连接到我的笔记本电脑服务器(我不太了解 wireshark 信息)但连接丢失。

这是我的安卓代码:

这是我的 SERVLET TOMCAT 代码:

我不知道怎么了。有另一种通过websockets将android客户端与服务器(类似技术上的java servlet)结合使用的解决方案吗?谢谢

0 投票
1 回答
4576 浏览

websocket - 如何在高速公路客户端工具中添加基本身份验证标头

我想在高速公路客户端工具中添加基本的身份验证标头。我怎样才能做到这一点?

当前请求

我需要的请求:

注意:我不希望高速公路服务器对客户端进行身份验证。
我的场景是高速公路客户端 --> 我的服务器 --> 高速公路服务器。
我的服务器将负责提取授权标头,然后调用高速公路服务器。

0 投票
3 回答
3675 浏览

python - 如何设置 Autobahn Pub/Sub Server 和 Autobahn Webserver 在同一端口上侦听

我最近发现 autobahn python 和 js 是一种建立 pub/sub 服务器和相应客户端的舒适方法,即使使用 rpc 调用也是如此。

浏览完教程后,我设置了一个测试版本,其中一个 websocket 服务器和一个运行在同一端口上的 web 服务器。服务器通过 websocket 定期向客户端发送数据。用户获取的 html 位于 localhost 根目录上。一切正常。

但是,我想要完成的是:设置一个发布/订阅服务器和一个在同一个端口上监听的网络服务器。

教程只展示了如何在两个不同的端口上设置它们(如http://autobahn.ws/python/tutorials/pubsub所示)。

我对python和高速公路很陌生,尤其是扭曲。任何建议都会非常好!

非常感谢!

马克

0 投票
1 回答
746 浏览

android - Android Autobahn Websocket 客户端如何检测连接丢失?

我正在使用 Android Autobahn 客户端与 Web 套接字服务器进行通信。我需要知道客户端如何检测 tcp 连接丢失。它是否发送 TCP 心脏探测来检测这一点?

PS:错误代码:de.tavendo.autobahn.WebSocket.ConnectionHandler.CLOSE_CONNECTION_LOST

0 投票
1 回答
937 浏览

javascript - 扭曲的 websocket 聊天服务器 openid 身份验证

我有一个 python 聊天服务器,它使用扭曲和高速公路 websockets 进行连接。

这是服务器

一个独立的 html/js 客户端可以连接和发送聊天消息。但我想在打开 websocket 之前实现一个开放的身份验证(由服务器执行)。

这是 onload 函数:

因为我是 python/twisted 的新手,所以我不知道该怎么做,示例大多只显示没有身份验证的 websocket 聊天室。

我怎样才能正确实施openid?因为它还需要重定向,这会破坏 ws 连接。

0 投票
1 回答
1428 浏览

python - 高速公路 WAMP 服务器的命令式客户端?

我正在使用高速公路运行 websocket 服务器来补充我的 Django 应用程序。有时,我需要将消息从 Django 发送到 websocket 服务器,使用websocket-client模块可以正常工作。我很想改用 WAMP 协议,因为 RPC/PubSub API 看起来很棒,但是 python 客户端代码是作为一个扭曲的协议实现的,我不知道如何强制使用它,即像函数调用而不是来自一些外国事件循环。有什么我在文档中没有看到的,还是我的架构应该不同?

0 投票
0 回答
1521 浏览

python - Go Websocket Server & Python Autobahn Client Conflict

I have been successfully writing a Go (server) websocket 'chat' application based in this example code

Both client and server work as expected.

When I have come to implement a client using Python's Autobahn I am running into trouble. it is based on this example

ws://localhost:8080/ws (which works in Chrome) yields an HTTP 1.0/400 from the server. ws://localhost:8080/ (does not work in Chrome) yields an HTTP 1.0/200 from the server (in both cases).

Scanning the source (I admit, I don't know the WS protocol) seems to imply that the server should be responding with a 101.

This is the output from Autobahn:

UPDATE: I have also tried against this sample Go code which is a very trivial echo server. This makes me even more suspicious of my Autobahn code.

UPDATE: Code, as requested:

0 投票
2 回答
1365 浏览

php - PHP 棘轮 websocket $conn->send($msg)! 如何在客户端获取此消息?

这是我的代码(使用 rachet 和 wamp 服务器的 websocket php!

我将使用 $conn->send() 为所有客户端发送消息,但我不知道如何在客户端上使用 autobahnJS 获取此消息?

更新 我找到了解决这个问题的方法!

1) 在 autobahnJS 中启用调试模式

2)使用 conn._websocket.onmessage 从服务器获取每个消息响应。

谢谢大家。

0 投票
1 回答
154 浏览

python - WampServerProtocol 中有 onSessionClose 吗?

我正在使用 Autobahn Python 制作 WAMP 服务器。onSessionOpen我在我的子类中打开了一个数据库连接WampServerProtocol,当然需要在连接关闭时关闭它。但是,我在教程或文档中都找不到会话关闭处理程序。

0 投票
2 回答
144 浏览

python - 不要向客户端发送异常

似乎除了在我的 WAMP 服务器中抛出的任何东西都被 Autobahn 捕获并发送到客户端。这有两个问题:a) 如果服务器出现问题,则需要将其登录到服务器上,以便团队修复;b) 这些异常可能非常具有启发性(尤其是来自ORM)并且我不希望它们被转发给恶意的第三方。

我可以防止这种行为吗?如果可以,有没有办法明确发送应该发送给客户端的错误消息?