Node.js 如何修复octokit.authenticate()已弃用

Node.js 如何修复octokit.authenticate()已弃用,node.js,Node.js,我正在启动ginit模块,但出现如下错误: =>octokit.authenticate()已弃用。使用“auth”构造函数 而不是选择 我怎样才能修好它? 我的代码 尝试以下方法: const Octokit = require('@octokit/rest'); module.export = { getInstance({username, password}) { return Octokit({ auth: { username,

我正在启动ginit模块,但出现如下错误:

=>octokit.authenticate()已弃用。使用“auth”构造函数 而不是选择

我怎样才能修好它? 我的代码

尝试以下方法:

const Octokit = require('@octokit/rest');

module.export = {
  getInstance({username, password}) {
    return Octokit({
      auth: {
        username,
        password,
      },
    });
  }
}

显示了一些指定凭据的其他示例。

也许您可以从本文中编写代码:

我的解决方案如下

const Octokit = require("@octokit/rest");
const Configstore = require("configstore");
const pkg = require("../package.json");
const _ = require("lodash");
const CLI = require("clui");
const Spinner = CLI.Spinner;
const chalk = require("chalk");

const inquirer = require("./inquirer");

const conf = new Configstore(pkg.name);


module.exports = {

  getInstance: () => {
    return global.octokit;
  },

  getStoredGithubToken: () => {
    return conf.get("github.token");
  },

  setGithubCredentials: async () => {
    const credentials = await inquirer.askGithubCredentials();
    const result = _.extend(
      {
        type: "basic"
      },
      credentials
    );

    global.octokit = Octokit({
      auth: result
    });

  },

  registerNewToken: async () => {
    const status = new Spinner("Authenticating you, please wait...");
    status.start();
    try {    
      const response = await global.octokit.oauthAuthorizations.createAuthorization({
          scopes: ["user", "public_repo", "repo", "repo:status"],
          note: "ginits, the command-line tool for initalizing Git repos"
      });

      const token = response.data.token;
      if (token) {
        conf.set("github.token", token);
        return token;
      } else {
        throw new Error(
          "Missing Token",
          "GitHub token was not found in the response"
        );
      }
    } catch (err) {
      throw err;
    } finally {
      status.stop();
    }
  }
};


介意添加更多关于您的环境的信息吗?
const Octokit = require("@octokit/rest");
const Configstore = require("configstore");
const pkg = require("../package.json");
const _ = require("lodash");
const CLI = require("clui");
const Spinner = CLI.Spinner;
const chalk = require("chalk");

const inquirer = require("./inquirer");

const conf = new Configstore(pkg.name);


module.exports = {

  getInstance: () => {
    return global.octokit;
  },

  getStoredGithubToken: () => {
    return conf.get("github.token");
  },

  setGithubCredentials: async () => {
    const credentials = await inquirer.askGithubCredentials();
    const result = _.extend(
      {
        type: "basic"
      },
      credentials
    );

    global.octokit = Octokit({
      auth: result
    });

  },

  registerNewToken: async () => {
    const status = new Spinner("Authenticating you, please wait...");
    status.start();
    try {    
      const response = await global.octokit.oauthAuthorizations.createAuthorization({
          scopes: ["user", "public_repo", "repo", "repo:status"],
          note: "ginits, the command-line tool for initalizing Git repos"
      });

      const token = response.data.token;
      if (token) {
        conf.set("github.token", token);
        return token;
      } else {
        throw new Error(
          "Missing Token",
          "GitHub token was not found in the response"
        );
      }
    } catch (err) {
      throw err;
    } finally {
      status.stop();
    }
  }
};