发送网络请求出错:块的长度与它的补集不匹配

使用问题 · 2319 次浏览
suka233 创建于 2021-08-13 09:47

报错图片:

问题描述:

使用HTTP操作发送请求,具体是homeassistant的rest请求,无论是POST还是GET都会报这个错误,

测试发现,在使用postman发送相同请求的情况下(意思是发送的请求没有任何错误的情况下)

在Quicker中:POST请求可以忽略这个错误而正常发送,但是GET请求会因为这个错误导致请求失败

使用环境:

Quicker版本:1.25.15

windows10

以下是请求实例:

猜测:会不会是因为请求头的authorization字段的值过长导致quicker内部验证出错?

CL 最后更新于 2021/8/13

2021-09-29 00:53 :

此问题大佬已修复,可以试试了!

回复内容
CL 2021-08-13 09:52
#1

这种算“使用问题” ,我已经修改好了。

提示是底层的报错,说明http请求不合法,具体需要搜索一下提示文字,看看网上有没有人遇到类似的问题。

搜索结果看,似乎是解压缩出错,数据可能不完整。

CL 最后更新于 2021-08-13 09:53
CL 2021-08-13 09:55 :

如果可以在公网访问到这个网页,可以把相关信息发给我,我这里调试一下。

suka233 2021-08-13 10:07 :

谢谢帮我调整到"使用问题".

相同的请求,使用Postman是可以正常发送的,

并且,POST请求可以忽略这个错误而正常发送,所以应该可以认为这个http请求是合法的吧.

搜索了下,说是因为:"关于Socket .net的封装有点不同,解压的话得先去掉deflate压缩算法的前面两个标志位,第一个字节是 78h(120b),第二个字节是 DAh(218b),然后再解压"

请问这种错误能在quicker的用户层面进行处理吗

CL 回复 suka233 2021-08-13 10:09 :

这个更底层一些,Quicker里只是指示请求接受gzip和deflate压缩,不参与解压缩的过程。

感觉应该和请求没有关系,是响应的格式不同。

CL 最后更新于 2021-08-13 10:10
suka233 回复 CL 2021-08-13 10:10 :

没有办法公网访问,这是我主机上的home assistant服务器.不好测试的话,我先使用其他方式发送请求先用着 :-P

suka233 回复 CL 2021-08-13 10:11 :

了解了,感谢作者的耐心解释~~

2021-09-23 18:43
#2

同样问题+1

不是token长度问题,测试同样长度的错误token HA会返回"401: Unauthorized"

但正确的token就报这个问题了.

持续观望一下...

CL 2021-09-23 21:43 :

这个需要有在线服务可以在开发环境下debug一下,要不会很难定位到问题。

回复 CL 2021-09-23 22:56 :

搭了一个临时的测试环境,大佬有空了帮忙看下问题!多谢

临时创建了动作:

https://getquicker.net/Sharedaction?code=8b69e9c8-66a9-49f1-39b1-08d97dc8fa09&fromMyShare=True



CL 回复 2021-09-24 07:59 :

谢谢,我研究下。

CL 2021-09-24 09:54 :

似乎是两个协议冲突的问题,google 这个 “Block length does not match with its complement” 会有一些结果。 我把http里的deflate 自动处理去掉似乎就好了。等下个版本试试。

回复 CL 2021-09-24 10:00 :

好的好的,多谢.下个版本我试试!

CL 回复 2021-09-28 22:54 :

https://getquicker.net/Help/Versions 更新了一版可以试下看看。

CL 2021-09-28 22:54
#3

https://getquicker.net/Help/Versions 更新了一版可以试下看看。

2021-09-29 00:52 :

测试可以了获取了.问题已修复.

感谢大佬!

suka233 2021-09-29 14:25 :

感谢大佬!!! 长连接似乎目前连接不上服务器呢

suka233 回复 2021-09-29 14:25 :

也谢谢兄弟你的有效反馈~~!

CL 回复 suka233 2021-09-29 14:27 :

telnet getquicker.cn 2255 看一下是不是能通,不能的话说明端口可能被网络屏蔽了

suka233 回复 CL 2021-09-29 14:37 :

正在连接getquicker.cn...无法打开到主机的连接。 在端口 2255: 连接失败

CL 回复 suka233 2021-09-29 14:45 :

问下网管看看是不是屏蔽端口了。目前这边服务是正常的,连接数也正常。

suka233 回复 CL 2021-09-29 15:15 :

好的  感谢回复

回复主贴