jQuery beforeSend 现在是未使用的 属性?

jQuery beforeSend is now an unused property?

我之前使用这个 exact 函数没有任何错误。现在,PhPStorm (10.0.1) 突然警告我 beforeSend 属性 没有被使用。我认为这一定是误报,因为对 PhPStorm 进行了一些更新以及它的 lints 方式。

这不是,真的不叫了!但我终究无法理解为什么:

jsdom.env({
    html: '<html><body></body></html>',
    scripts: ['https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.js'],
    done: function adminAuth(err, window) {
      var $ = window.jQuery;
      $.ajax({
        crossDomain: true,
        url: client.globals.api + 'auth/admins',
        method: 'POST',
        processData: false,
        data: '{"email": "' + client.globals.credentials.username + '", "password": "' + client.globals.credentials.password + '"}',
        beforeSend: function(request) {
          request.setRequestHeader('accept', 'application/json');
          request.setRequestHeader('content-type', 'application/json');
          request.setRequestHeader('authorization', 'Basic NotForYourEyes');
          request.setRequestHeader('cache-control', 'no-cache');
        },
        success: function(response) {
          captureStoreId(response, $);
        },
        error: function(jqXHR, textStatus, err) {
          console.log('Authentication failed with status %s and error %s', textStatus, err);
        }
      });
    }
  });

控制台中记录的错误是:

Authentication failed with status error and error null

这是(某种)预期的,因为未添加身份验证 header。

同样,这个确切的代码片段,包括它的调用方式,一点也没有改变。与服务器的凭据相同。控制台中没有其他错误。

非常感谢任何帮助!

beforeSend 内部记录一些东西后,很明显它确实仍在执行。

错误出在我的凭据上,大约在我更新凭据的同时,我注意到来自 Phpstorm 的错误 linting 错误。所以,我是假设 Phpstorm 中的输出是正确的受害者。永远不要假设...叹息。

TLDR:这是来自 Phpstorm 的误报 linting 错误。 beforeSend 仍然可以使用 jsdom 的这个版本 3.1.2 和 Google 的 jquery.

的托管版本 2.1.4