Kong / Kong/httpsnippet

Content-Length invalid for unicode text

Open
#332 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
1.2k
Forks
242
PR merge metrics
No merged PRs in 30d

Description

When generating a http request string, the content-length seems to be calculated using the number of codepoints instead of bytes.
This was generated using insomnia, which uses httpsnippet:
```
POST /api/v1/test HTTP/1.1
Content-Type: text/plain
User-Agent: insomnia/2023.5.8
Host: localhost:5003
Content-Length: 3

äöü
```

This is what insomnia actually sends when executing the request (visualized using nc -l localhost 5003)
```
$ nc -l localhost 5003
POST /api/v1/test HTTP/1.1
Host: localhost:5003
Content-Type: text/plain
User-Agent: insomnia/2023.5.8
Accept: */*
Content-Length: 6

äöü
```

Contributor guide

Open the contributing guide

Research direction

Start by tracing the code that generates the HTTP request string and calculates Content-Length, then check how Unicode text is encoded. Add a regression test using äöü and verify that the generated length matches the UTF-8 byte count.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
api
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.