创建回调 API
create callback API
新的Restful API与Google一样,OpenStreetview使用简单的回调机制。基本上你调用 API,添加一个参数&callback=my function
.执行对此 API 的调用时,因此我的函数称为传递 JSON 数据集。
正在尝试为我为个人使用而构建的 API 创建相同的机制。
据我了解,我的API需要返回一个javascript,该脚本调用在脚本中传递的函数。对于测试,我创建了这个:
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');
给出了我期望的结果。
有什么建议吗?
不要用<script>
标签包围你的 javascript。您没有生成带有javascript正文的HTML文件。你应该把它想象成你在动态地生成一个javascript文件。
Javascript文件也不会以<script>
开头和结尾
相关文章:
- MeteorJS:在带有回调的vzaar api上正确使用wrapAsync
- 回调函数中传递参数的困难(Google Map API Markers)
- 如何通过bxSlider回调api处理事件
- Google Data API上的OOP Javascript回调方法
- JavaScript回调函数和Google Feed API
- 谷歌放置了api回调解决方法
- 如何在node.js中通过API回调异步递归
- 承诺API回调-如何正确解决或拒绝
- 如何将自定义回调javascript参数添加到bing API回调中
- 获取API回调的参数
- 从iTunes搜索API回调返回值
- 返回NULL值的Google Geocode API回调函数
- 节点API回调与服务器websocket通信
- 如何发送JQuery实例方法作为Google API回调
- IE7和IE8的YouTube API回调
- Angularjs:我可以让我的指令在控制器API回调后运行吗?
- SoundCloud SDK/neneneba API回调事件未启动
- AngularJS在API回调后恢复表单
- 获取 API 回调以在 ReactJS 中的函数外部传递
- json-in-script"的Youtube API回调直通