当前位置: 首页 > 面试题库 >

如何设置JSONP?

张炳
2023-03-14
问题内容

我需要在服务器端执行什么操作才能允许某人使用JSONP从该服务器获取数据。我还需要在用户端做什么?我想使用JSONP替代XMLHttpRequest。

由于同源政策,它无法在我的Firefox扩展中使用。因此,人们推荐使用JSON,但是在Internet上搜索教程和指南后,我很迷失。

谢谢您的帮助!


问题答案:

假设您的服务器运行的是PHP,则只需添加“回调” GET请求。

<?php header('content-type: application/json; charset=utf-8');
$data = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5); 
echo $_GET['callback'] . '('.json_encode($data).')';

在客户端(使用jQuery):

$.ajax({url: 'http://site.com/data.php', dataType:'jsonp'});

上面的PHP代码仅用于演示,不要忘记清理 $
_GET [‘callback’]

就是说,如果您的问题使用相同的原始策略,则可能只需要允许从服务器端进行交叉源,一切都应该可以进行。



 类似资料:
  • 我安装了模块(browserify、react、reactify),并尝试使用browserify处理jsx文件。 C:\dev\React。js 错在哪里?

  • 问题内容: 我想让消息出现 屏幕上的任何位置。 相对于JFrame。(不在JFrame的中心) 例如,这将在作为参数提供的JFrame的中心显示消息 并且这将在屏幕中央显示该消息,而与任何JFrame无关。 我想要的是将消息的位置设置为我想要的任何位置 我想要的是设置消息相对于JFrame的位置(而不是JFrame的中心) 怎么样? 问题答案:

  • 我注释了setIntTag(String),但Jaxb marchaller调用setIntTag(Integer)并将Integer传递给它,如果我删除setIntTag(Integer),marchaller调用字符串setter。 如何注释这些方法以保留两个setter,并告诉编组程序使用字符串setter?

  • 问题内容: 我正在尝试在ES 1.0.0上设置geo_point对象,并对它运行简单的概念证明查询,但是查询无法返回任何匹配。这是我的设置步骤: 1)创建映射: 2)验证映射: 3)添加一条数据 4)查询该数据: 我的预期结果是,我将返回一击,但查询未返回任何内容。 提前致谢! 问题答案: 我认为您缺少请求的“查询”部分。 我刚刚测试了您的步骤,然后进行更改返回了文档。

  • Android中有一个事件监听器,称为DatePicker.OnDateChangedListener。我正在尝试设置DatePicker视图的日期更改侦听器,如下所示: 但你猜怎么着?日期选取器没有名为SetonDateChangedListener的方法。 我的问题是: 那么如何在Android中设置一个更改日期的监听器呢? 如果无法设置更改日期的侦听器,则此事件的目的是什么? 任何文档/教程

  • 问题内容: 我有两次调用两种不同的方法: 第二种方法: 当我将设置为某个值时,它有什么作用?只是错误检查? 如何设置在上面的方法,并以和 谢谢 问题答案: 出于所有实际目的,您可以将其视为全局变量(尽管通常不是)。所以包括并使用它: 您应该问自己是否是针对您的目的的最佳错误报告机制。可以将这些函数设计为自行返回错误代码吗?