function LikesDislikes () {
$.ajax({
url: '',
type:"POST",
data: '<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns=""
xmlns:yt="">
<yt:rating value="like"/>
</entry>',
headers: {
"Content-Type":"application/atom+xml",
"Content-Length":,
"Authorization":"Bearer ya29.AHES6ZQ59RrQgujZmIjssBdYlwwLVrpCodnirdLROi7-g7U",
"X-GData-Key":"key=AIzaSyAPrtP2Tq4m5WVInCvCWptVAKPhQ4SQNZA",
"GData-Version":"2"
},
// Content-Type:"application/atom+xml",
error: function() { alert("No data found."); },
// contentType: "text/xml",
success: function (response) {
alert('response:' + response);
}
});
}
How can I calculate the Content-Length
in the above code?
function LikesDislikes () {
$.ajax({
url: 'http://gdata.youtube.com/feeds/api/videos/keDZXXDxK1c/ratings',
type:"POST",
data: '<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:yt="http://gdata.youtube.com/schemas/2007">
<yt:rating value="like"/>
</entry>',
headers: {
"Content-Type":"application/atom+xml",
"Content-Length":,
"Authorization":"Bearer ya29.AHES6ZQ59RrQgujZmIjssBdYlwwLVrpCodnirdLROi7-g7U",
"X-GData-Key":"key=AIzaSyAPrtP2Tq4m5WVInCvCWptVAKPhQ4SQNZA",
"GData-Version":"2"
},
// Content-Type:"application/atom+xml",
error: function() { alert("No data found."); },
// contentType: "text/xml",
success: function (response) {
alert('response:' + response);
}
});
}
How can I calculate the Content-Length
in the above code?
2 Answers
Reset to default 9As said in specs
The Content-Length entity-header field indicates the size of the entity-body, in decimal number of OCTETs
Please look as this question String length in bytes in JavaScript.
Basically if your data contains only ASCII characters everything should be quite easy
function LikesDislikes () {
var data = '<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:yt="http://gdata.youtube.com/schemas/2007">
<yt:rating value="like"/>
</entry>';
$.ajax({
url: 'http://gdata.youtube.com/feeds/api/videos/keDZXXDxK1c/ratings',
type:"POST",
data: data,
headers: {
"Content-Type":"application/atom+xml",
"Content-Length": data.length,
"Authorization":"Bearer ya29.AHES6ZQ59RrQgujZmIjssBdYlwwLVrpCodnirdLROi7-g7U",
"X-GData-Key":"key=AIzaSyAPrtP2Tq4m5WVInCvCWptVAKPhQ4SQNZA",
"GData-Version":"2"
},
// Content-Type:"application/atom+xml",
error: function() { alert("No data found."); },
// contentType: "text/xml",
success: function (response) {
alert('response:' + response);
}
});
}
The Content-Length entity header is indicating the size of the entity-body, in bytes, sent to the recipient.
Syntax
Content-Length: <length>
Directives
<length>
The length in decimal number of octets.
Content-Length Calculation
- If the request body is a String you can simple use the length of the body.
- If the request body is a JSON you can just stringify the body.
const requestBody =
{
data:
{
...
}
};
xhr.setRequestHeader("Content-Length", JSON.stringify(requestBody).length.toString());
Read more at: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Length