我需要使用 NGINX 作为 WebSocket 代理,并且我已经能够毫无问题地运行本教程。在本例中,使用 ws 和 Node.js 完成了一个简单的 WebSocket 应用程序。但是,我需要用 C 开发的应用程序替换 javascript (server.js) 中的代码。
为此,我已尝试使用本教程中显示的最后一个示例,该示例非常简单且易于理解。
但是,使用与 server.js 中相同的端口和配置,在运行编译的 C 代码时,似乎没有正确建立通信。在这种情况下,当我在客户端的终端中运行 wscat 时,它似乎在等待某些东西,因为从未见过“已连接”这个词,但是通信也没有完成(这就是为什么我说它似乎在等待某些东西; 在其他情况下,例如,如果我尝试使用不同的端口,则通信将关闭,并且会显示一个句子为“错误:意外的服务器响应”)。
另一方面,在服务器端,我可以看到有一个新连接。我怀疑来自服务器的答案没有到达客户端,但我不知道为什么。Nginx 配置正确,因为在 javascript 中完成的示例工作正常,并且我在 javascript 和 C 中使用相同的端口(在 server.js 中我有:'wss = new WebSocketServer({port: 8010});'和server.c: 'server.sin_port = htons( 8010 );' 从我的角度来看它应该工作......)
我已经尝试过 C 语言中具有类似行为的其他示例。有谁知道这可能是什么原因?您是否为 WebSocket 服务器推荐其他特定的 C 代码?
我有一个非常基本的问题.我需要在类中声明的循环中填充数组.简化的代码类似于:
class Arr:
def __init__(self):
self.test = []
var = Arr
for x in xrange(0, 3):
var.test.append(1)
Run Code Online (Sandbox Code Playgroud)
这段代码总是返回"类Arr没有属性'测试'",但我没有看到原因.怎么了?