如何设置JS客户端来执行远程API请求?

时间:2013-01-06 01:25:16

标签: php javascript ajax

我想要实现的目标:
为了能够在客户端域上嵌入以下代码,让我们说client.com打电话给apidomain.com。 apidomain上的client.js脚本对PHP文件app.php进行ajax调用,该文件也托管在apidomain.com上。调用完成后,将应用选项,PHP文件将响应客户端页面上嵌入的数据     <script type="text/javascript" src="http://apidomain.com/client.js"> var api_key = 'key'; var opts = true; </script>

我有JS和PHP设置,但每次client.js向app.php发出请求时,即使帖子数据通过,它也会返回空白。这个问题与跨域ajax请求有关吗?什么是正确的设置?

1 个答案:

答案 0 :(得分:0)

你应该使用这个名为JSONP的technique。所以用几句话说:

  1. 使用您希望从app.php
  2. 获取的参数创建someFunction函数(在client.com域中)
  3. 通过在src属性和回调参数(/app.php?myvar=hello&callback=someFunction)中创建具有特定参数的脚本标记来发送获取请求
  4. 在你的app.php中你创建了javascript代码并回复它,就像那样:someFunction(/ *这里你放了你的参数);
  5. 因此,当你的app.php脚本被加载时,它会调用someFunction('example param1','example param2')和你在app.php中创建的参数