Alpaca 服务器:错误 404,找不到原因

问题描述 投票:0回答:1

我正在尝试使用 micropython 1.20 在 ESP32 devkit V1 上为“望远镜”设备开发一个 Alpaca 服务器实例。

我使用这个项目作为我的目的的基础。我特别保留了服务器部分和错误处理方法,我只是从 microdot V1 迁移到 microdot V2。

我的所有程序都存储在这个仓库中:https://github.com/Sylvain-BROCAS/Starget

我为望远镜设备编写了所有默认方法,并开始测试我的程序(API 参考此处

我现在面临以下问题: 我可以向像

http://IP:port/management/...
这样的 URL 发出请求,我得到响应并且响应内容是正确的(它检测到设备被声明为望远镜,其 devine 编号 = 0 且具有正确的唯一 ID)

但是当我尝试向像

http://IP:port/api/v1/telescope/0/connected
这样的 URL 发送请求时,我收到“错误 404:未找到”。 PUT 和 GET 方法都不起作用。

我使用了 ASCOM 诊断工具,我尝试连接,这是我得到的结果:

 Create              Creating device Connected           Connecting to device Error 

System.Exception: Error calling method: Connected, HTTP Completion Status: Completed, Error 

Message: Not found   

à System.Dynamic.ComRuntimeHelpers.CheckThrowException(Int32 hresult, ExcepInfo& excepInfo, UInt32 argErr, String message)    
à CallSite.Target(Closure , CallSite , ComObject , Boolean )    
à ASCOM.DriverConnect.ConnectForm.btnConnect_Click(Object sender, EventArgs e) dans C:\ASCOM Build\Export\ASCOM.DriverConnect\ConnectForm.cs:ligne 261 

Dispose             Disposing of device 
Dispose             Completed disposal 
ReleaseComObject    Releasing COM instance 
ReleaseComObject    Completed release. Count: 0 
GC Collect          Starting garbage collection 
GC Collect          Completed garbage collection

我尝试获取 Alpaca 设备的配置文件,这是跟踪:

<Default>                 Starget Alpaca device                    
Discovery Port            32227                     
Enable IPv4 Discovery     True                     
Enable IPv6 Discovery     True                     
Enable Rediscovery        True                     
Establish Connection Timeout 2                     
Image Array Compression   0                     
Image Array Transfer Type 3                     
Include Debug Trace       True                     
IP Address                192.168.163.206                     
Long Device Response Timeout 120                     
Manage Connect Locally    False                     
Password                  <Empty>                     
Port Number               20000                    
Remote Device Number      0                     
Service Type              http                     
Standard Device Response Timeout 10                     
Trace Level               True                     
Trust Unsigned SSL Certificates False                     
UniqueID                  2fba39e5-e84b-4d68-8aa5-fae287abc02d                     
User Name                 <Empty>

我不明白什么可能导致此错误,因为“连接”端点是通过函数定义的(在 /src/alpacadevice.py 中)。

有人告诉我这可能是 TCP 协议中未签名数据包的问题。我将“信任 unsined SSL 证书”更改为 True,没有任何变化。我下载了Wireshark来观察数据包交换,对话结果如所附截图所示: enter image description here

enter image description here

有人有线索可以帮助我解决这个问题吗?

感谢您的帮助,祝您度过美好的一天^^

http server micropython alpaca ascom
1个回答
0
投票

更新: 该问题是由 Microdot V2.0.4 中的错误引起的。升级到2.0.5版本解决了问题

© www.soinside.com 2019 - 2024. All rights reserved.