JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://unpkg.com/@reactivex/[email protected]/dist/global/Rx.js"></script>

JavaScript

let data = "";
for (let c = 0; c < 100000; ++c) {
	data += "" + Math.random();
}

const progressSubscriber = new Rx.Subject();
const request = Rx.Observable.ajax({
  method: 'POST',
  url: "/echo/json/",
  body: JSON.stringify({ data }),
  progressSubscriber
});
  
progressSubscriber
	.merge(request)
  .subscribe(console.log);