I see a lot of XML code at Goodreads while working on their iOS app, but some time ago I realized I didn’t have an easy way to see the XML source of a given API response on the iPad. Incidentally, when I realized that I was in bed, and the iPad was the only device within my reach.
So I found this script on ravelrumba.com which worked fine for HTML pages, but not so much with pure XML content.
Being not a JavaScript expert, it took me a while to make the script work on Mobile Safari, but the following fix seems to do its job. The trick was to replace the usage of document.documentElement.innerHTML
with XMLSerializer:: serializeToString()
, which serializes a XML tree to a string.
Here’s the whole thing. Just add it as a bookmarklet on your Mobile Safari bookmarks bar:
javascript:(function(){var a=window.open('about:blank').document;a.write(' Source of '+location.href+'');a.close();var b=a.body.appendChild(a.createElement('pre'));b.style.overflow='auto';b.style.whiteSpace='pre-wrap';b.appendChild(a.createTextNode((new XMLSerializer()).serializeToString(document.documentElement)))})();