小编abr*_*ham的帖子

jQuery XmlHttpRequest忽略Cache-Control

我正在使用谷歌浏览器,我注意到每次执行XHR请求时,我都会在请求中添加以下标头:

Cache-Control: no-cache
Pragma: no-cache
Run Code Online (Sandbox Code Playgroud)

如果您阅读http://www.w3.org/TR/XMLHttpRequest/上的规范,则说明以下内容

如果用户代理实现HTTP缓存,则它应该尊重作者请求头中的Cache-Control头(例如,Cache-Control:no-cache绕过缓存).除非最终用户明确请求此类行为(例如,通过重新加载页面),否则它不能自动发送Cache-Control或Pragma请求标头.

好吧,我正在尝试以下方法:

$.ajax(myUrl, {
    type: 'get',
    dataType: 'json'
    cache: true,
    headers: {
      'Cache-Control': 'max-age=200' 
    }
  })
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我明确地设置了Cache-Control标头,希望获得我的资源的缓存副本.好吧Chrome似乎忽略了Cache-Control标头.

Cache-Control: no-cache在发出XHR请求时是否可以不发送标头?

javascript jquery google-chrome

16
推荐指数
1
解决办法
9620
查看次数

如何从chrome扩展程序中读取文件?

我有popup.html,当点击浏览器操作加载弹出窗口时调用popup.js.我在那里以编程方式注入内容脚本chrome.tabs.executeScript().我需要在页面的主体上添加一个元素.如何在扩展中插入来自不同.html文件的HTML代码,因为这样维护代码要容易得多.我想在popup.js中访问它(是否有一些API调用?)然后在code属性内插入带有检索到的HTML代码字符串的内容脚本代码.

我看到了一些使用XMLHttpRequest内容脚本的方法,但有没有避免这种情况?我尝试过chrome.fileSystem,但那是Chrome应用而不是扩展.

javascript google-chrome google-chrome-extension

14
推荐指数
1
解决办法
1万
查看次数

Backbone.js在restful模型上使用非restful操作

我有一个定期的宁静模型,我得到,创建,删除和更新.最重要的是,我想对该模型进行特殊操作,例如change_password.

常规RESTful路由是传统的Rails 3路由:

fetch   => GET    /api/models/:id
save    => PUT    /api/models/:id
create  => POST   /api/models
destroy => DELETE /api/models/:id
Run Code Online (Sandbox Code Playgroud)

但是,除此之外,我还有特殊的操作:

changePassword => GET /api/models/:id/change_password
activate       => GET /api/models/:id/activate
Run Code Online (Sandbox Code Playgroud)

等等.

我需要在模型上设置什么,以便识别这些新操作,以及如何将调用包装到模型方法中?

backbone.js ruby-on-rails-3

13
推荐指数
2
解决办法
4692
查看次数

Chrome扩展程序:本地存储,如何导出

我有一个chrome扩展,可以将大量数据保存到chrome.storage.local.我正在尝试找到导出此数据并将其打包到文件中的简单方法.我并不局限于它是什么类型的文件(JSON,CSV,等等),我只需要能够将内容导出到独立(和可发送)文件中.扩展仅在本地运行,用户可以访问所有本地文件.

local-storage google-chrome-extension

13
推荐指数
1
解决办法
9752
查看次数

Chrome扩展中的跨源XMLHttpRequest

根据chrome扩展API,如果设置了权限,则应允许使用XMLHttpRequest对象进行跨域调用:

扩展可以与其来源之外的远程服务器通信,只要它首先请求跨源权限即可.

我正在密切关注本教程,但下面的代码给出了一条错误消息:

XMLHttpRequest无法加载http://www.google.com/search?hl=en&q=ajax.原始chrome-extension:// bmehmboknpnjgjbmiaoidkkjfcgiimbo不允许使用Access-Control-Allow-Origin.

我不仅允许google.com的请求,而且要求任何网站但仍然无法通过.有人可以帮忙吗?

我的清单文件:

{
  "name": "The popup",
  "version": "0.1",
  "popup": "popup.html",
  "permissions": [
    "http://*/*",
    "https://*/*",
    "https://www.google.com/*",
    "http://www.google.com/*"
    ],
  "browser_action": {
    "default_icon": "clock-19.png",
    "default_title": "This is title",
    "default_popup": "popup.html"
  }
}
Run Code Online (Sandbox Code Playgroud)

实际的电话:

function sendRequest() {
    document.write("Sending request");
    var req = new XMLHttpRequest();
      req.open("GET", "http://www.google.com/search?hl=en&q=ajax", true);
      req.onreadystatechange = function() {
          if (req.readyState == 4) {
            if (req.status == 200) {
              alert(req.responseText);
              document.write("OK");
            }
          }
        };
      req.send();
} 
Run Code Online (Sandbox Code Playgroud)

javascript ajax google-chrome xmlhttprequest google-chrome-extension

11
推荐指数
1
解决办法
3万
查看次数

不使用eval/new函数的JavaScript模板库

使用的Google Chrome扩展程序manifest_version: 2限制使用evalnew Function.我检查的所有JavaScript模板库(mustachejs,underscorejs,jQuery模板,hoganjs等)都使用new Function.有没有相当成熟和支持不使用?

有关安全限制的信息.

javascript templates eval google-chrome-extension

11
推荐指数
2
解决办法
3282
查看次数

关闭浏览器时确认对话框?

我需要在使用javascript或PHP关闭浏览器窗口之前显示确认对话框.当我点击浏览器的关闭按钮时,应该出现确认框.其他明智的不显示对话框.请帮帮我.

javascript

10
推荐指数
1
解决办法
3万
查看次数

对于Google Chrome扩展程序,如何在浏览器图标中创建开/关切换?

例如,当您单击下拉列表中的浏览器图标时,Adblock会有一个"关闭"选项.

我希望用户能够打开/关闭域的扩展名,而不必禁用它来关闭它.

另一种选择可能是在网页布局上放置一个静态按钮,并打开/关闭扩展或样式表.

google-chrome toggle google-chrome-extension

10
推荐指数
1
解决办法
1万
查看次数

Chrome和Android中的Web SQL存储限制?

所以我正在编写一个Web应用程序,需要在离线Web SQL数据库中存储大约40MB的离线数据.它需要在Chrome(桌面),Safari(桌面和移动设备)和Android浏览器中运行.现在我知道这些浏览器支持Web SQL,我知道哪个版本,但我需要知道允许多少存储空间.Safari桌面支持500MB的数据库存储.Safari mobile支持50MB的数据库存储.

然而,我花了几个小时在各处搜索,以找出什么空间镀铬桌面支持和Android浏览器支持但没有找到任何具体的东西.其中一个地方指出镀铬台式机的硬盘限制为5MB,而另一个地方则指出镀铬台式机的限制为25MB(不使用镀铬扩展).Android浏览器的一个来源注意到15MB的限制另一个注意到5MB的限制.任何人都可以指向某个地方,说明Web SQL存储的实际硬限制是什么,适用于android和chrome?

html5 storage android google-chrome web-sql

10
推荐指数
1
解决办法
1万
查看次数

有没有办法专注于chrome中的特定选项卡(通过插件)

我希望能够专注于特定的选项卡.

chrome.tabs.query我得到之后,我id如何将焦点设置在该标签上?我在文档中没有看到此选项.

google-chrome-extension

10
推荐指数
1
解决办法
5231
查看次数