> If you have a slow network, this could be a huge setback, especially when an OPTIONS request takes 2 seconds to respond, and another 2 for the data.
Firstly if your OPTIONS is taking 2 seconds, CORS is not your bottleneck. Even with a half-second PING due to lack of content distribution, and DNS resolution (shouldn't be an issue after the first request), an OPTIONS request should be of negligible size; the bulk of that 2 seconds isn't going to be network latency, that's a serious server-side perf. issue.
Secondly, similarly, if your OPTIONS is taking equally as long as your GET, CORS isn't your bottleneck.
Yes, considering CORS latency is worthwhile if having your API on the same domain is an easy change, but the title overstates the performance cost.