How to create javascript POST request to server with Headers and Data

25,905

So basically you want to set the header of a POST request. You can do it only if its an ajax request (You can't set headers for a normal html form submission request). Here is a way to set headers for an ajax request:

var request = new XMLHttpRequest();
request.onreadystatechange= function () {
    if (request.readyState==4) {
        //handle response
    }
}
request.open("POST", "url", true);
request.setRequestHeader("header", "blah blah");
request.setRequestHeader("Accept","text/plain");
request.send("post data");
Share:
25,905
z3us
Author by

z3us

Test Engineer

Updated on November 22, 2020

Comments

  • z3us
    z3us almost 3 years

    I use JS automation framework for testing iOS application. In the middle of a test I need to create POST request to server to some money to user and then verify that changes are reflected in UI.

    Request looks like: wwww.testserver.com/userAddMoney?user_id=1&amount=999

    but to authorize on server I need to pass special parameters to Header of request:

    Headers: X-Testing-Auth-Secret: kI7wGju76kjhJHGklk76

    Thanks in advance!

  • z3us
    z3us almost 11 years
    I've pasted my data into your code. Unfortunately formatting is broken. I've uploaded code to pastebin [link]pastebin.com/bYvkGS8y Please help me with two questions. Thanks in advance!