apache / apache/servicecomb-java-chassis

[BUG] - http请求体开启了压缩之后,cse未能正确识别到

Aberta
#4,879 0 comentários 0 reações 0 responsáveis Ver no GitHub
bug
Linguagem predominante
Java
Estrelas
1.9k
Forks
814
Merge médio
8d 23h
PRs com merge (30d)
1

Descrição

### Steps to Reproduce

1. 发送http请求,http header如下:
```
'Content-Encoding': 'gzip',
'Content-Type': 'application/json',
```
2. 请求发送到服务器端,未能正确先解压gzip,导致报错:
```
Parameter is [queryReq]. Processor is [body]. Message is [Illegal character ((CTRL-CHAR, code 31)): only regular white space (\\r, \\n, \\t) is allowed between tokens\n at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 2]]."}
```
3. 只有尝试将http请求的header修改为如下的时候,才不会报错:
```
'Content-Encoding': 'gzip',
'Content-Type': 'application/gzip',
```
查找一些资料显示,Content-Type 表示标头用于指示资源的原始[媒体类型](https://developer.mozilla.org/zh-CN/docs/Glossary/MIME_type)(在发送时应用任何内容编码之前);写成`'Content-Type': 'application/gzip'`也不正确了,原始内容是json格式的body

### Expected Behavior

_No response_

### Servicecomb Version

_No response_

### Additional Context

_No response_

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

A issue não indica nenhum arquivo-fonte, teste ou ponto de entrada. Comece localizando o tratamento do corpo das requisições HTTP e o processamento de Content-Encoding; em seguida, reproduza a requisição JSON com gzip. Considera-se concluído quando um corpo JSON codificado com gzip e com Content-Type application/json é descompactado antes do parsing sem o erro relatado, com cobertura de regressão.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
java
Domínio
api, backend
Tipo de issue
Bug
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.