I have a problem with login to vtiger crm via jquery using webservices. This is my code:
function doLogin(){
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status === 200)
{
alert(xmlhttp.responseText);
}else{
}
}
xmlhttp.open("GET","http://vtiger_path/webservice.php?operation=getchallenge&username=admin",true);
xmlhttp.setRequestHeader("Content-type","json");
xmlhttp.send();
}
The xmlhttp.status
is always 0, so I don't get the alert.
You can't make a cross-domain Ajax call (or not easily...)
Can't you use PHP ???
Here is a snippet :
HTML / JS part:
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("button").click(function(){
var userName = 'admin';
var webserviceUrl = 'http://vtiger_path/altaircrm/webservice.php';
var action = "?operation=getchallenge&username=";
var a = webserviceUrl+action+userName;
$.ajax({
url: "ws.php",
type: 'POST',
data:{'data':a},
success: function(data) { alert(data); },
error: function(data) { alert('Failed!'); },
});
});
});
</script>
</head>
<body>
<button>Send an HTTP request to a page and get the result back</button>
</body>
</html>
PHP part:
<?php
$a = $_POST['data'];
$json = file_get_contents($a);
echo $json;
?>
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.