Thank you for your suggestions. I tried your code with the following results:
It worked correctly on my desktop computer, which is running NS Basic. It came back with ASUS On-Line and 200 as it should.
I then tried it on my older iPhone with an ios of 10.0.1. It also worked correctly.
When I tried it on my newer iPhone running ios 10.3.2, I got the “5 second timeout” message. When I checked the value of req.readyState, it came back as 1, not 4. I then changed your code to check if req.readyState<>1 instead of <>4, hoping that this would do it, but I got a message https://checkasusstatus-changes-wrongly.volt.live undefined. This link is my app I am running. All of this tells me that ios 10.3.2 is different is some way that is causing the problem. Note that it came back as 4 on my older iPhone.
Can you tell me what req.readyState represents? Should it always be 4? Also, it sure would be nice if you had an iPhone with ios 10.3.2 to try the code.
Thanks again for your help!