It’s funny, my web application (under development) stopped working yesterday. I was just about to look at a new library called SignalR. Normally, a browser requests a page, and the server serves a page. End of. This technology allows the server to keep sending updates to the browser. It’s possible to spoof this using older technologies, but… I want to use current.
I took the chance to upgrade a few bits and pieces, and this was what did for me. The application uses something called Bootstrap (makes the display fit automatically when it comes to computers, tablets, phones etc.) and I suspected this immediately. In the end, I built a “template” app, and compared the two side-by-side. The first place I looked was my code – I thought I might have edited out a crucial line, say, and I never was infallible, even before! – but I couldn’t find anything.
The browser I use has a bunch on debugging tools, one of which tells you exactly what files are loaded underneath a button. Not just the (html) page itself, but and images, style sheets, or any other bits of code. I made sure I loaded each file fresh every time (browsers will normally store things in a cache) and noticed that the Bootstrap files were different to each other. So, I took the files that worked, and copied them to the site that didn’t work….and hey, presto!
I’ve tried to be brief in my description, but rest assured that this hunting has probably cost me a day, just as I figured out what to do next.
Something in my housekeeping one of the things I updated was Bootstrap, although I just glanced past it. I didn’t think that this widely-used commercial product would cause me problems, but it did. Having said that, I’m sure it was tested very thoroughly, and I’m sure it’s just me that needs to tweak my code somehow – they must’ve made a subtle change. A task for later on in the project, perhaps?
Sure enough, I must’ve started off on version 3 point something, and hit the button to upgrade to version 4 point something. I support as you go through a major release, you should expect changes. Regressed it back, anyway, for now, and am now good to go.