加载包含不同Cookie的页面

时间:2011-11-17 08:08:35

标签: jquery google-chrome-extension

我想知道是否有办法用浏览器包含的一组不同的Cookie发出AJAX请求。

我正在制作特定的扩展程序来扩展一个特定的网页。该页面包含一些只能被视为匿名用户(未登录)的数据。我尝试做的是在用户登录时使用AJAX获取数据。

这可以用chrome扩展吗?即使是最狡猾的方式对我也有好处。

提前致谢。

2 个答案:

答案 0 :(得分:1)

我目前无法对此进行测试,但您应该查看jQuery headersdocumentation here)的$.ajax选项。您可以覆盖AJAX调用的cookie头。

既然你提到过,我能想到的最“hackish”的方法是简单地将cookie值存储在某个地方,删除cookie,发出AJAX请求,在AJAX响应时设置cookie。

答案 1 :(得分:1)

Max:没有机制在同一个配置文件中加载带有单独cookie jar的页面。您可以做的是使用WebRequest Extension API,这在开发频道上或多或少都是功能完整的。这将允许您直接操作传出请求的标头,这意味着您可以删除cookie或添加自己的cookie。

具体来说,您需要查看onBeforeSendHeaders事件。这样的事情似乎是一个好的开始:

chrome.experimental.webRequest.onBeforeSendHeaders.addListener(
    function(details) {
      // manipulate `details.requestHeaders` here
    },
    {
      // URL filters here
    },
    ["requestHeaders", "blocking"]);