Is this HTTP 304 a problem or something else is missing here?
A Err304 "Not Modified" is not problematic. It happens if the initial Err200 has included a "Last-Modified" HTTP-Header indicating a timestamp value when the content of the requested ressource has beed changed previously.
For subsequent requests to the same ressource, the client will then include a "If-Modified-Since" HTTP-Header containing the timestamp value of the previously received "Last-Modified" HTTP-Header.
If the web server noticed that a client sends a "If-Modified-Since" HTTP-Header and the last-change timestamp of the requested ressource is identical, it will respond with a Err304 "Not Modified" response without resending the content again (performance benefit). And if the web server noticed that a client has send an obsolte "If-Modified-Since" timestamp value for the requested ressource, the web server will send a Err200 "OK" alongside with the content of the requested ressource. When the server sends the Err200 "OK" it may again include a new "Last-Modified" timestamp so that the next request to the same ressource could be answered with an Err304 again.
Note: Instead of using the classic "Last-Modified" HTTP-header, the web server may also send a "Expires" or "Etag" header. So check out for those headers too...