你可以在Chrome扩展程序中使用jQuery POST吗?

时间:2010-10-19 04:08:57

标签: post google-chrome google-chrome-extension google-calendar-api jquery-post

我正在尝试将我的Chrome扩展程序与Google Calendar API配合使用。但是,谷歌设置扩展沙箱的方式几乎是不可能的。

我无法使用JavaScript添加Calendar API,因为我尝试了200种不同的方式来包含http://www.google.com/jsapi库。因此,我想尝试使用PHP与Calendar API进行交互。甚至可以从Chrome扩展程序进行POST以运行我的PHP文件?如果没有,那么与任何没有可下载库的外部API进行交互几乎是不可能的,不是吗?如果是这种情况,我不知道如何使用Chrome扩展程序做出任何有用的事情。

1 个答案:

答案 0 :(得分:4)

我认为您仍然遇到困难,因为您没有完全理解内容脚本和背景页面之间的区别。

内容脚本有一定的限制。他们不能:

  • 使用chrome。* API(chrome.extension的部分除外)
  • 使用其扩展程序页面定义的变量或函数
  • 使用由网页或其他内容脚本定义的变量或函数
  • 制作跨网站XMLHttpRequests

基本上他们只能访问注入它们的页面的DOM并与后台页面通信(通过发送请求)。

谢天谢地,背景页面没有任何限制,只有它无法访问用户正在查看的页面。好消息是后台页面可以与内容脚本进行通信(再次通过请求)。

正如您所看到的,后台页面和内容脚本相互补充。如果你同时使用两者,你​​几乎没有任何限制。您所需要的就是在这两者之间正确地划分逻辑。

关于您的初始问题 - 内容脚本无法发出跨域请求,但后台页面可以。您可以阅读更多here