This question shows how to read a chunked response in Javascript, but I would like to send a chunked HTTP POST from Javascript. The documentation for XMLHttpRequest doesn't mention anything. Does the answer to this question mean that it's not possible due to browser restrictions on setting the header?
I don't think you can with XMLHttpRequest - it's old and somewhat limited, it's really just a backwards compatibility hack for a long-gone IE ActiveX component.
However, at the bleeding edge (not in Firefox yet) you can with fetch and TransformStream. This lets you send a stream from JS.
Refer to this MDN page about Transfer-Encoding. You can set the type to chunked.
You have to specify how long each chunk will be, but it allows you to send data in chunks.
I think XMLHttpRequest is very old, I think the alternative is to use Axios which is a newer JavaScript package which helps to handle network requests. It is much more easier than fetch and ajax in JavaScript.