FaceRect

GRATUITO
Por apicloud | Atualizado 22 giorni fa | Media
Popularidade

0.4 / 10

Latência

12ms

Nível de serviço

0%

Health Check

N/A

Voltar para todas as discussões

getting response issue

Rapid account: Lyden
lyden
לפני 10 שנים

The code below enables to detect the facial features. I’m having an issue with getting the response when the request is sent. Please help troubleshoot such issue.

<!doctype html>
<html>
<head>
<meta charset=“UTF-8”>
<title>Facerect</title>
</head>

<body>

<script>

//chnage this url
var image_location=“http://apicloud.me/assets/facerect/image4.jpg”;

var url ="https://apicloud-facerect.p.mashape.com/process-file.json?";
url += “url=” + encodeURI(image_location);
url += “&features=true”;

alert(url);

var xmlhttp=new XMLHttpRequest();
xmlhttp.open(“GET”,url,true);
xmlhttp.setRequestHeader(“X-Mashape-Authorization”, “zVNNYMfznlE1LpqFTWDjx7Ddt3yD51oy”);

xmlhttp.onreadystatechange=function(){

alert(xmlhttp.readyState + "," + xmlhttp.status);
alert(xmlhttp.statusText);
alert(xmlhttp.responseText);


if(xmlhttp.readyState==4) {
	alert ("response text = " + xmlhttp.responseText);
	
	var response=JSON.parse(xmlhttp.responseText);
	//alert (xmlhttp.responseText);
	alert (response.faces[0].features.nose.x);
	
	//var response=JSON.parse(xmlhttp.responseText);
	//alert (xmlhttp.responseText);
	alert (response.faces[0].features.nose.y);	
	
	//var response=JSON.parse(xmlhttp.responseText);
	//alert (xmlhttp.responseText);
	alert (response.faces[0].features.mouth.x);	
	
	//var response=JSON.parse(xmlhttp.responseText);
	//alert (xmlhttp.responseText);
	alert (response.faces[0].features.mouth.y);	
	
	alert (response.faces[0].features.eyes[0].x);	
	alert (response.faces[0].features.eyes[0].y);
	alert (response.faces[0].features.eyes[1].x);	
	alert (response.faces[0].features.eyes[1].y);	
	
	var x1 = response.faces[0].features.eyes[0].x;
	var y1 = response.faces[0].features.eyes[0].y;
	var x2 = response.faces[0].features.eyes[1].x;
	var y2 = response.faces[0].features.eyes[1].y;
	
	var dist = Math.sqrt(((x1-x2)*(x1-x2)) + ((y1-y2)*(y1-y2)));
	
	alert(dist);
}		

}

xmlhttp.send(null);

</script>
</body>
</html>

Rapid account: Apicloud
apicloud Commented לפני 10 שנים

Hi there!
Seems like you are trying to perform a cross-domain HTTP request which is blocked by most browsers. Please see the following StackOverflow question:
http://stackoverflow.com/questions/1941340/empty-responsetext-from-xmlhttprequest

A possible solution would be to perform server-side calls to the API instead of using JS and XMLHttpRequest. Hope that helps!

Best regards,
Andy

Junte-se à discussão - adicione o comentário abaixo:

Efetue login / inscreva-se para postar novos comentários