使用XMLHttpRequest发送PUT/DELETE数据

tam*_*pie -3 javascript xml httprequest http-put http-delete

我使用来自使用XMLHttpRequest发送POST数据的示例来创建此JavaScript代码:

function PostXML(webURL, post_data) {
    var objHTTP = new ActiveXObject("MSXML2.XMLHTTP");
    objHTTP.open("POST", webURL, false);
    objHTTP.setRequestHeader("Content-Type", "application/xml; charset=utf-8");
    objHTTP.setRequestHeader("Accept", "application/xml; charset=utf-8");
    objHTTP.setRequestHeader("Content-Length", post_data.length);
    objHTTP.send(post_data);

    while((objHTTP.readyState != 4) && (objHTTP.readyState != 'complete')) {
        Delay(100);
    }

    if(200 != objHTTP.Status) {
        Log.Message("Returned Status Code of: " + objHTTP.Status);
        Log.Message("Status Text: " + objHTTP.StatusText);
    }
    else {
        Log.Message("Returned Status Code of: " + objHTTP.Status);
    }

    return objHTTP.responseText;
}
Run Code Online (Sandbox Code Playgroud)

我也需要PUTDELETE东西.如何传输此代码才能使用PUT,以及如何传输此代码以便能够执行此操作DELETE

任何其他同样有效的例子也很好.

Thi*_*ter 18

首先,您发布的代码非常糟糕,您不应该使用它.由于某些原因,请参阅我对您的问题的评论.

要使用PUT或DELETE而不是POST,只需将传递给的第一个参数更改objHTTP.open()"PUT""DELETE".

  • 对不起发布可怕的代码.我刚刚开始为2个月前的测试自动化目的编写javascript.在此之前没有编码/脚本编制经验.如果你能给我一个完整的例子,我可以从中学到什么.替换确实有效,谢谢!我错误地做的是我用"put_data"替换了"post_data".谢谢你的帮助! (2认同)
  • 您已经链接到的问题的第一个答案是一个好的开始... http://stackoverflow.com/a/9713078/298479另外,在开发过程中,请不要使用Internet Explorer,除非要测试是否也可以使用Internet Explorer 。 (2认同)