Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boas,
Eu tou a tentar criar um webservice que faz uma chamada a uma api via ajax e me devolve o array ja tratado mas ele nao me esta a passar a variável para o lado do cliente o que poderá estar mal alguém me pode ajudar?
Server
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.js" type="text/javascript"> </script>
<script>
var line_points = new Array;
var line_points2 = new Array;
function ponts (lat1,long1,lat2,long2) {
$.ajax({
url : "https://graphhopper.com/api/1/route?point.....",
type : "GET",
async: true,
dataType : "json",
success : function(keydata) {
// Create array of lat,lon points
var arr = new Array;
var line_points = new Array;
var data = keydata.paths[0].points.coordinates;
for (var prop in data) {
arr.push(data[prop]);
}
for (var alt in arr) {
var arr2 = new Array;
arr2.push(arr[alt][1]);
arr2.push(arr[alt][0]);
line_points.push(arr2);
}
console.log("Ajax");
console.log(line_points);
line_points2=line_points;
}});
return line_points2;
}
</script>
<?php
$server = new SoapServer(null, array('uri' => "http://localhost:8888/soap/"));
function getpoints($lat1 , $long1, $lat2, $long2) {
echo '<script type="text/javascript">ponts('.$lat1.','.$long1.','.$lat2.','.$long2.');
</script>';
$x = "<script>document.write(line_points2)</script>";
return $x ;
}
$server->addFunction("getpoints");
if ($_SERVER["REQUEST_METHOD"]== "POST") {
$server->handle();
} else {
$functions = $server->getFunctions();
foreach ($functions as $func) {
print $func. "<br>";
}
}
?>
Cliente
<?php
$client = new SoapClient(null, array(
'location' => 'http://localhost:8888/soap3/server.php',
'uri' => 'http://localhost:8888/soap/',
'trace' => 1));
$result = $client->getpoints("41.695242","-8.84232","41.69489","-8.833072");
if (is_soap_fault($result)){
echo trigger_error("SOAP Fault: (faultcode: {$result->faultcode},
faultstring: {$result->faulstring})", E_ERROR);
}
else{
print_r($result);
}
?>
Obrigado .
Carregando comentários...