XMLHttpRequest不适用于chrome版本23&以上

时间:2013-02-14 07:05:05

标签: javascript gwt google-chrome-extension

我创建了chrome扩展程序&将crx文件添加到chrome扩展部分。这个.crx文件是使用javascript& amp;创建的。 manifest.json files.From java脚本,我每隔10秒就给我的java servlet提供XMLHttpRequest。我在chrome版本18& 19上测试了它,它工作正常,但当我试图添加.crx文件时chrome版本23然后XMLHttpRequest无法正常工作。  javaScript代码是: -

try{


    var xmlhttp;
    if (window.XMLHttpRequest){
      xmlhttp=new XMLHttpRequest();
      }
    else{
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    xmlhttp.onreadystatechange=function()
      {
      if (xmlhttp.readyState==4 && xmlhttp.status==200){
       /* document.getElementById("myDiv").innerHTML=xmlhttp.responseText;*/
       // alert(xmlhttp.responseText);
          if(xmlhttp.responseText!="?"){
              chrome.browserAction.setBadgeText({text : xmlhttp.responseText});
              chrome.browserAction.setIcon({path:"images/IconGreen.png"});
              chrome.browserAction.setBadgeBackgroundColor({color : [ 208, 0, 24, 255 ]});
          }
          else{
              chrome.browserAction.setBadgeText({text :"?"});
              chrome.browserAction.setIcon({path:"images/IconGrey.png"});
              chrome.browserAction.setBadgeBackgroundColor( {color:[190, 190, 190, 230]});
          }
        }
      };
    xmlhttp.open("GET"," http://127.0.0.1:8888 /engile/realTimeUpdateCountServlet",true);
    xmlhttp.send();

} catch (err) {
    alert(err.message);

}

&安培; manifest.json是

{

  "name": "A Chrome Extension",
  "version": "4.4.0", 
  "background": { "scripts": ["background.js"] },
  "permissions": [
     "tabs",
    "webNavigation", 
    "http://*/*",
    "chrome.action"
  ],
  "web_accessible_resources": [
    "278CB17EDF811DAFF4CBD7790CBE8C06.cache.html"
  ],  
  "browser_action": {
    "name": "Make this page red",
    "default_icon": "images/IconGrey.png"

  },
  "manifest_version": 2
}

请给我任何建议。

1 个答案:

答案 0 :(得分:0)

代码中的问题

  • "browser_action": { "name": "Make this page red",没有名为名称的论据,必须是"default_title"
  • "permissions": ["tabs","webNavigation", "http://*/*", "chrome.action"],没有名为chrome.action的权限添加来自 documentation 的相关权限。