Reputation: 22099
When I perform an XHR on our production system, the statusText
in the response will be an empty string. However, on our development system, the statusText
will reflect the status correctly.
According to the documentation for XMLHttpRequest.statusText
, it should only be empty while the request is being processed. However, I am seeing this behavior in the onload
handler.
Additionally, this behavior can only be observed in Chrome and Edge. Firefox will display the correct text.
So, how is the content of the statusText
actually determined?
Upvotes: 17
Views: 11407
Reputation: 81
Did your production system use HTTPS and your dev system HTTP by any chance?
For some reason on Chrome statusText
s started to return empty as soon as we installed an SSL certificate in our server and url requests started with HTTPS rather than HTTP.
Hence, we made sure to use status
rather than statusText
.
Upvotes: 1
Reputation: 15188
Let's look at spec:
HTTP/2 does not define a way to carry the version or reason phrase that is included in an HTTP/1.1 status line.
Upvotes: 5
Reputation: 42017
It might be because one server uses HTTP/2, while the other does not. HTTP/2 doesn't have reason phrases anymore.
Upvotes: 28