如何从 Chrome Web 应用程序内部使用 jQuery Ajax

发布于 2025-01-08 12:38:44 字数 918 浏览 1 评论 0原文

我有一个带有以下清单的网络应用程序(扩展):

{
    "name": "Porpington",
    "version": "0.0.1.1",
    "app": {
        "launch": {
            "local_path": "main.html"
        }
    },
    "icons": {
        "128": "mimsy.jpg"
    },
    "permissions":[
        "http://*/*",
        "tabs"
    ]   
}

并且我有一个非常简单的 main.html (我使用 jquery 1.6.4)

<script src="jquery.js"></script>
<body>
      <a href="javascript:getData()">getData</a><br/>
</body>
<script>
function getData(){
    $.ajax({type: 'get',
          mode: 'abort',
          dataType: 'json',
          url: 'http://localhost/confmart',
          data: {},
          success: function(res){
              alert(res);
          }
    });
    alert(3);
}
</script>

我在控制台中看到请求发出,我看到正确的响应(在控制台中) m 但由于某种原因,success 事件处理程序似乎没有被触发。
我做错了什么?

I have a web app (extension) with the following manifest:

{
    "name": "Porpington",
    "version": "0.0.1.1",
    "app": {
        "launch": {
            "local_path": "main.html"
        }
    },
    "icons": {
        "128": "mimsy.jpg"
    },
    "permissions":[
        "http://*/*",
        "tabs"
    ]   
}

and I have a very simple main.html (I use jquery 1.6.4)

<script src="jquery.js"></script>
<body>
      <a href="javascript:getData()">getData</a><br/>
</body>
<script>
function getData(){
    $.ajax({type: 'get',
          mode: 'abort',
          dataType: 'json',
          url: 'http://localhost/confmart',
          data: {},
          success: function(res){
              alert(res);
          }
    });
    alert(3);
}
</script>

I see in the console the request goes out, I see the correct response (in the console)m but for some reason it looks like the success event handler is not fired.
What am I doing wrong?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一个人的旅程 2025-01-15 12:38:44

您的 url: 对我来说看起来很可疑。向您的请求添加错误处理程序和超时:

timeout: 10000,
error: function(XMLHttpRequest, textStatus, errorThrown){
  alert("ERROR: " + textStatus + " (" + errorThrown + ")");
}

这可能相关,也可能不相关,但 ajax.

Your url: looks suspicious to me. Add an error handler to your request and a timeout:

timeout: 10000,
error: function(XMLHttpRequest, textStatus, errorThrown){
  alert("ERROR: " + textStatus + " (" + errorThrown + ")");
}

This may or may not be relevant, but there is no mode: listed in ajax.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文