首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试连接时出现python signalR -500Server错误

尝试连接时出现python signalR -500Server错误
EN

Stack Overflow用户
提问于 2019-06-24 00:19:45
回答 2查看 472关注 0票数 6

我尝试使用此库连接到signalR api

https://pypi.org/project/signalr-client/

以下是我的代码

代码语言:javascript
复制
from requests import Session
from signalr import Connection

with Session() as session:
    #create a connection
    connection = Connection("https://firouzex.exphoenixtrade.com/realtime", session)

    #get chat hub
    chat = connection.register_hub('GetNewAPIToken')

    #start a connection
    connection.start()

但是我得到了这个错误

代码语言:javascript
复制
$ python test.py
Traceback (most recent call last):
  File "test.py", line 12, in <module>
    connection.start()
  File "C:\Users\Rooz\AppData\Local\Programs\Python\Python35\lib\site-packages\signalr\_connection.py", line 47, in start
    negotiate_data = self.__transport.negotiate()
  File "C:\Users\Rooz\AppData\Local\Programs\Python\Python35\lib\site-packages\signalr\transports\_auto_transport.py", line 16, in negotiate
    negotiate_data = Transport.negotiate(self)
  File "C:\Users\Rooz\AppData\Local\Programs\Python\Python35\lib\site-packages\signalr\transports\_transport.py", line 28, in negotiate
    negotiate.raise_for_status()
  File "C:\Users\Rooz\AppData\Local\Programs\Python\Python35\lib\site-packages\requests\models.py", line 940, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 500 Server Error: Internal Server Error for url: https://firouzex.exphoenixtrade.com/realtime/negotiate?clientProtocol=1.5&connectionData=%5B%7B%22name%22%3A+%22GetNewAPIToken%22%7D%5D
EN

回答 2

Stack Overflow用户

发布于 2019-06-29 10:01:08

我无法重现你的错误。该问题可能是由于损坏或过期的包,也许重新安装可以解决您的问题。SignalR库依赖于这些包

代码语言:javascript
复制
certifi, idna, chardet, urllib3, requests, websocket-client, greenlet, pycparser, cffi, gevent, sseclient, signalr-client

要执行全新安装,请先卸载包

代码语言:javascript
复制
python -m pip uninstall -y certifi, idna, chardet, urllib3, requests, websocket-client, greenlet, pycparser, cffi, gevent, sseclient, signalr-client

然后重新安装

代码语言:javascript
复制
python -m pip install certifi, idna, chardet, urllib3, requests, websocket-client, greenlet, pycparser, cffi, gevent, sseclient, signalr-client --upgrade
票数 1
EN

Stack Overflow用户

发布于 2020-02-29 20:31:17

您应该使用omsclienttokenhub而不是GetNewAPIToken来注册集线器。您还应该将signalr更改为signalr_aio

干杯。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56725738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档