Casperjs/Phantomjs 修改 headers

Casperjs/Phantomjs Modifying headers

我正在尝试更改一些 headers 但没有任何效果:

var casper = require('casper').create({ // 
    stepTimeout: 15000, 
    verbose: false, 
    logLevel: 'error', 
    pageSettings: { 
        loadImages: true, 
        loadPlugins: true, 
        userAgent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.364',
        customHeaders: { 
            Connection: 'keep-alive', 
            Accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' 
} } });

我也试过:

phantom.page.customHeaders = { 
    "User-Agent" : "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:26.0) Gecko/20100101 Firefox/26.0", 
    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", 
    "Accept-Language": "en-US,en;q=0.5", "Accept-Encoding": "gzip, deflate",
    "Connection" : "keep-alive" };

对于单个连接:

this.open('http://localhost/post.php', { 
    method: 'post', 
    headers: { 'Accept': 'application/json' } 
});

None 他们正在工作还是我做错了什么? 谢谢

我无法重现您的问题。它似乎对我有用......也许你在某个地方遇到重定向问题,就像讨论的那样 here.

我可以建议你像 this guy 那样做并尝试下面的代码吗?

casper.on('started', function () {
  this.page.customHeaders = {
    "User-Agent" : "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:26.0) Gecko/20100101 Firefox/26.0", 
    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", 
    "Accept-Language": "en-US,en;q=0.5",
    "Accept-Encoding": "gzip, deflate",
    "Connection" : "keep-alive"
  }
});