<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Hi, <div><br></div><div>I have been working on a website recently and would love to be able to use the validator.nu web service api. I have tried numerous other HTML validators, but none have good RESTful APIs.</div><div><br></div><div>To be more specific, my website has a code editor on it, and users can type code on it. When they click a check button, the following code is executed in jQuery/Javascript:</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">            </span>var xmlhttp = new XMLHttpRequest();<br>                <br>                xmlhttp.onreadystatechange = function() {<br>                    if (xmlhttp.readyState == 4) {<br>                        alert(xmlhttp.responseText);<br>                        document.getElementById("responseWindow").src = "data:text/html;charset=utf-8," + xmlhttp.responseText;<br>                    }<br>                }<br>                <br>                xmlhttp.open("POST", "<a href="http://validator.nu">http://validator.nu</a>", true);<br>                xmlhttp.setRequestHeader("Content-type", "multipart/form-data; boundary=doNotIncludeXadovAUvAvlBryUDSk5ZcdipW1fm8v79qYnXYmDG");<br>                xmlhttp.send("laxtype=yes&parser=html5&content=" + editor.getValue());</div><div><br></div><div>The code opens an xmlhttprequest and sends a POST request to the API, as described in this documentation:</div><div><br></div><h1 id="firstHeading" class="firstHeading">
                                <span dir="auto">Validator.nu POST Body Input</span>
                        </h1>
                        
                        
                        <div id="bodyContent">
                                                                
                                
                                
                                                                
                                <div id="contentSub"></div>
                                
                                                                                                                                
                                <div id="jump-to-nav" class="mw-jump">To use <a href="http://wiki.whatwg.org/wiki/Validator.nu_Web_Service_Interface" title="Validator.nu Web Service Interface">Validator.nu as a Web service</a> by POSTing an entity body, the client issues an HTTP request either to <code><a target="_blank" rel="nofollow" class="external free" href="http://validator.nu/">http://validator.nu/</a></code> or <code><a target="_blank" rel="nofollow" class="external free" href="http://html5.validator.nu/">http://html5.validator.nu/</a></code> using the POST method. The document to check is included as the entity body of the request. The <code>Content-Type</code> request header must be used to communicate the MIME type of the entity body. <a href="http://wiki.whatwg.org/wiki/Validator.nu_Common_Input_Parameters" title="Validator.nu Common Input Parameters">Common parameters</a> are encoded as query string parameters.</div><div id="mw-content-text" dir="ltr" class="mw-content-ltr" lang="en"><p>Only <code>&</code> is supported as a query parameter separator. <code>;</code> is not supported.
</p></div></div><div>Percent-encoded octets in the query string must decode to UTF-8.</div><div><br></div><div><br></div><div>Unfortunately, this isn’t working. The server sends a response, but it says:</div><div><br></div><div><ol><li class="info"><p><strong>Info</strong>: The Content-Type was <code>application/octet-stream</code>. Using the XML parser (not resolving external entities).</p></li><li class="error fatal"><p><strong>Fatal Error</strong>: Empty document, with no root element.</p></li></ol><div>Have I used bad syntax? I must not be understanding the documentation correctly? Can anyone offer a suggestion?</div></div><div><br></div><div>Thanks,</div><div>Jackson</div></body></html>