无法让高速公路示例工作(js 和 python)



我正在尝试使用AutobahnPython和AutobahnJS库开始使用WAMP,但我无法获得官方示例。以下是我所做的:

pip-2.7 install autobahn    # this gave me ab 0.5.14, but I tried 0.6-git too
git clone git://github.com/tavendo/AutobahnPython.git
git checkout maintenance_v0_5
cd AutobahnPython/examples/wamp/authentication/
python2.7 server.py debug
firefox http://localhost:8080

我在服务器的调试输出中得到以下内容:

2013-03-29 15:11:23+0100 [-] Log opened.
2013-03-29 15:11:23+0100 [-] WampServerFactory starting on 9000
2013-03-29 15:11:23+0100 [-] Starting factory <autobahn.wamp.WampServerFactory instance at 0x132b5a8>
2013-03-29 15:11:23+0100 [-] WampServerFactory starting
2013-03-29 15:11:23+0100 [-] Site starting on 8080
2013-03-29 15:11:23+0100 [-] Starting factory <twisted.web.server.Site instance at 0x1779b90>
2013-03-29 15:11:28+0100 [HTTPChannel,0,127.0.0.1] 127.0.0.1 - - [29/Mar/2013:14:11:27 +0000] "GET / HTTP/1.1" 200 3429 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:19.0) Gecko/20100101 Firefox/19.0"
2013-03-29 15:11:29+0100 [HTTPChannel,0,127.0.0.1] 127.0.0.1 - - [29/Mar/2013:14:11:28 +0000] "GET /favicon.ico HTTP/1.1" 404 145 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:19.0) Gecko/20100101 Firefox/19.0"
2013-03-29 15:11:29+0100 [MyServerProtocol,0,127.0.0.1] TX WAMP: [0, "H0tcxzZW7g2aUKQ4", 1, "Autobahn/0.5.14"]
2013-03-29 15:11:29+0100 [MyServerProtocol,0,127.0.0.1] registered remote method on http://api.wamp.ws/procedure#auth
2013-03-29 15:11:29+0100 [MyServerProtocol,0,127.0.0.1] registered remote method on http://api.wamp.ws/procedure#authreq
2013-03-29 15:11:29+0100 [HTTPChannel,0,127.0.0.1] 127.0.0.1 - - [29/Mar/2013:14:11:28 +0000] "GET /favicon.ico HTTP/1.1" 404 145 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:19.0) Gecko/20100101 Firefox/19.0"
2013-03-29 15:11:29+0100 [MyServerProtocol,0,127.0.0.1] RX WAMP: [2,"0.42w1p52zq5g","http://api.wamp.ws/procedure#authreq","foobar",null]
2013-03-29 15:11:29+0100 [MyServerProtocol,0,127.0.0.1] TX WAMP: [3, "0.42w1p52zq5g", "{"extra": {}, "timestamp": "2013-03-29T14:11:29Z", "authid": "PmRmYauw3-2S_4Wh", "authkey": "foobar", "sessionid": "H0tcxzZW7g2aUKQ4", "authextra": {"keylen": 32, "salt": "RANDOM SALT", "iterations": 10000}, "permissions": {"rpc": [{"call": true, "uri": "http://example.com/procedures/hello"}], "pubsub": [{"prefix": true, "uri": "http://example.com/topics/", "pub": true, "sub": true}]}}"]
2013-03-29 15:11:29+0100 [MyServerProtocol,0,127.0.0.1] RX WAMP: [2,"0.35zpscr4dpf","http://api.wamp.ws/procedure#auth","4xs7OnDnqHP+DiMqLnK95s36eiEhMRbkbUcRPJRHoOY="]

和最后的错误服务器和客户端(浏览器日志):

2013-03-29 15:11:29+0100 [MyServerProtocol,0,127.0.0.1] TX WAMP: [4, "0.35zpscr4dpf", "http://api.wamp.ws/error#invalid-signature", "signature for authentication request is invalid"]
2013-03-29 15:11:34+0100 [MyServerProtocol,0,127.0.0.1] RX WAMP: [7,"http://example.com/topics/mytopic1","Hello, world!"]
2013-03-29 15:11:34+0100 [MyServerProtocol,0,127.0.0.1] no topic / publication handler registered for http://example.com/topics/mytopic1

怎么了?这是我的错吗?

不,你没有做错任何事。使用总支路的电流头(不维护0.5)。盐渍的 WAMP-CRA身份验证(示例使用的)修复了一些维护0.5中没有的东西。抱歉给您添麻烦了。

这是Firefox连接的服务器日志:

oberstet@THINKPAD-T410S /f/scm/AutobahnPython/examples/wamp/authentication (master)
$ git log -1
commit f3165c51256334b97e6183bd0852c3102882e917
Author: Tobias Oberstein <tobias.oberstein@tavendo.de>
Date:   Tue Mar 26 12:15:52 2013 +0100
    add multiple protocols example
oberstet@THINKPAD-T410S /f/scm/AutobahnPython/examples/wamp/authentication (master)
$ python server.py debug
Auth Extra/Secrets
{'keylen': 32, 'salt': 'RANDOM SALT', 'iterations': 1000}
{'foobar': 'znWa4bxY1glpbQlZziHIlXA2shfF+HoCr9bnmZ5HPQg='}
2013-03-29 19:17:42+0100 [-] Log opened.
2013-03-29 19:17:42+0100 [-] WampServerFactory starting on 9000
2013-03-29 19:17:42+0100 [-] Starting factory <autobahn.wamp.WampServerFactory instance at 0x02934BC0>
2013-03-29 19:17:42+0100 [-] WampServerFactory starting
2013-03-29 19:17:42+0100 [-] Site starting on 8080
2013-03-29 19:17:42+0100 [-] Starting factory <twisted.web.server.Site instance at 0x036FDE18>
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] TX WAMP: [0, "7LHl79cVQEDZl_C5", 1, "Autobahn/0.6.0"]
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] registered remote method on http://api.wamp.ws/procedure#auth
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] registered remote method on http://api.wamp.ws/procedure#authreq
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] RX WAMP: [2,"0.c23s5q4pxf","http://api.wamp.ws/procedure#authreq","foobar",null]
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] TX WAMP: [3, "0.c23s5q4pxf", "{"extra": {}, "timestamp": "2013-03-29T18:17:42Z
", "authid": "7NEQK0Gnrqxq1JRL", "authkey": "foobar", "sessionid": "7LHl79cVQEDZl_C5", "authextra": {"keylen": 32, "salt":
 "RANDOM SALT", "iterations": 1000}, "permissions": {"rpc": [{"call": true, "uri": "http://example.com/procedures/hello"}], "
pubsub": [{"prefix": true, "uri": "http://example.com/topics/", "pub": true, "sub": true}]}}"]
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] RX WAMP: [2,"0.fscffb2cozr","http://api.wamp.ws/procedure#auth","LzKbKJb5K8D313P/bl1
tF4Z93bIZup8oR8+Am8PY8mc="]
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] registered topic http://example.com/topics/ for publication (match by prefix = True)
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] registered topic http://example.com/topics/ for subscription (match by prefix = True
)
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] registered remote method on http://example.com/procedures/hello
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] TX WAMP: [3, "0.fscffb2cozr", {"rpc": [{"call": true, "uri": "http://example.com/pro
cedures/hello"}], "pubsub": [{"prefix": true, "uri": "http://example.com/topics/", "pub": true, "sub": true}]}]
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] RX WAMP: [5,"http://example.com/topics/mytopic1"]
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] subscriptions map created for topic http://example.com/topics/mytopic1
2013-03-29 19:17:42+0100 [MyServerProtocol,1,127.0.0.1] subscribed peer 127.0.0.1:55946 on topic http://example.com/topics/mytopic1

最新更新