새로운 Restful API는 Google과 마찬가지로 OpenStreetview는 간단한 콜백 메커니즘을 사용합니다. 기본적으로 API를 호출하여 &callback=my function
매개 변수를 추가합니다. 이 API에 대한 호출을 실행하면 my 함수가 JSON 데이터 집합을 전달하여 호출됩니다.콜백 API 생성
개인적인 용도로 개발중인 API에 대해 동일한 메커니즘을 만들려고합니다.
내 API가 자바 스크립트를 반환해야한다는 것을 이해하면 스크립트에서 전달되는 함수가 호출됩니다.
function apiCall(URL,values, keyPair,cBackPair) {
// URL specifics URL to call
// keyPair: <keyname>=<key>; leave black if unneeded
// cBacPair: <callBackParametername>=<functionname>
// called is: URL?values&keypair&cBackPair
var request = (keyPair)?'&'+keyPair:'';
request = URL + '?'+ encodeURI(values) + request + '&' + cBackPair;
var script = document.createElement("script");
script.setAttribute("type", "text/javascript");
script.setAttribute("src", request);
document.body.appendChild(script);
}
function callAPI() {
apiCall('http://xllent.nl/map/ajax/answer.php','q=one','','s=doit');
}
function doit(result) {
alert(result);
}
내가 callAPI
온로드를 호출 테스트하려면 : 테스트를 위해 나는이를 만들었습니다.
스크립트 answer.php
은 매우 기본적인 :
<?$s = $_GET['s'];
?>
<script type="text/javascript">
doit('jeroen');
</script>
나중에 스크립트가 바로 스크립트를 호출하는 $s
를 사용하고, 물론 공급 사용자 데이터 것입니다.
지금은 스크립트 doit('jeroen');
을 실행하려고합니다. 그러나 아무 일도 일어나지 않습니다. 브라우저 창에 javascript:doit('jeroen');
을 입력하면 예상 한 결과를 얻을 수 있습니다.
제안 사항?
편안한로 끝나지 않는, 그것을 작동 – andrew