@0xgw/passport-forcedotcom

中文文档
1.0.0发布于 2022/02/14BSD-3-ClauseCommonJS近 30 天下载 5427

Salesforce.com / Force.com / Database.com 护照认证策略.

中文使用文档
文档目录5 节
  1. 使用量
  2. 创建连接的应用程序
  3. 示例
  4. 维护者
  5. 作者数

护照强制操作

SalesForce

这是一个战略,与 护照JS 与 Force.com平台(指您可以使用Saleforce CRM,您的 Force.com) (原始内容存档于2018-10-22). applications and Database.com.

请注意 截至0.1.0版本,成功认证现在的结果 在标准中 PassportJS 用户配置 对象.

使用量

  1. 下载此 npm 模块
npm install --save passport-forcedotcom
  1. 导入到您的应用程序中
var passport = require("passport");
var ForceDotComStrategy = require("passport-forcedotcom").Strategy;
  1. 使用您的申请资格和资料定义策略
passport.use(
  new ForceDotComStrategy(
    {
      clientID: "{client_id}",
      clientSecret: "{client_secret}",
      scope: ["id", "chatter_api"],
      callbackURL: "https://my.example.com/auth/forcedotcom/callback",
    },
    function verify(token, refreshToken, profile, done) {
      console.log(profile);
      return done(null, profile);
    }
  )
);
  1. 然后设置一些路线 传递流
app.get("/auth/forcedotcom", passport.authenticate("forcedotcom"), {
  display: "page", // valid values are: "page", "popup", "touch", "mobile"
  prompt: "", // valid values are: "login", "consent", or "login consent"
  login_hint: "", // optional: the user's SalesForce email address or username
  state: "", // optional: an aribrary URL encoded string that will get passed back to you
});
// this should match the callbackURL parameter above:
app.get(
  "/auth/forcedotcom/callback",
  passport.authenticate("forcedotcom", { failureRedirect: "/error" }),
  function (req, res) {
    res.render("index", checkSession(req));
  }
);

而与通常的护照一样,可以更新用户序列化/去序列化.

这个 login_hint 参数可以被 SalesForce用于登录表单上的用户名字段的预集. 不过这似乎不太可靠 见 销售部队OAuth 文档 更多细节.

这个 state 参数是有用的,如果您需要从启动与 SalesForce 的登录到用户重定向到您的应用程序之间保持用户信息。 这样可以避免依赖饼干来维持任何状态信息. 例如,您可以使用这个来跟踪用户在开始登录进程前试图访问的页面. 如果你通过一个 state 绳子就应该是 URL 编码。 。 。 .

创建连接的应用程序

为了使用这个策略,你需要有一个 已连接 应用 在销售部队内部。 见 这个 条款 用于详细且最新的连接 App 创建指令.

提示 :

  • 请注意: client_id 称为“消费者钥匙” client_secret 在一些UI和 文档.
  • 请确定将连接的 App 的回调 URL 设置到相同的设置中 b. 《公约》 new ForceDotComStrategy 建筑师。 如果你在用的话 express,那么您附加的路由也必须对应此 URL(例如. app.get('/auth/forcedotcom/callback', ...)
  • 获取一个 photos 节次 用户 简介 你需要设置 api 或者说 chatter_api 创建 Connected App 时的范围.
    • 图片的 URL 持续 ~ 30 天
    • 如果您不需要照片,请提供 skipPhoto: true 选项 ForceDotComStrategy 构造器并仅启用 id 范围.

示例

有一个实例应用叫做 simple-example 用于: examples/ 文件夹。 这显示了如何使用"ForceDotCom-Passport",并附有许多评论. 本地运行 :

  1. 打开 app.js 内 examples/simple-example
  2. 设定 CF_CLIENT_ID, (中文(简体) ), CF_CLIENT_SECRET, (中文(简体) ), CF_CALLBACK_URL 并选择, SF_AUTHORIZE_URL, (中文(简体) ), SF_TOKEN_URL 以匹配您的连接应用程序的设置.
  3. 通过运行安装 npm 模块 npm install
  4. 运行 : node app.js
  5. 打开 localhost:3000 在浏览器中尝试使用 OAuth 登录.

维护者

作者数

版本与发布记录

@0xgw/passport-forcedotcom 共发布 1 个版本,首次发布于 2022/02/14;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.0.0latest2022/02/144 年前

关于 @0xgw/passport-forcedotcom 的常见问题

@0xgw/passport-forcedotcom 是什么?

Salesforce.com / Force.com / Database.com 护照认证策略.

如何安装 @0xgw/passport-forcedotcom?

在项目目录运行 npm install @0xgw/passport-forcedotcom,或使用 pnpm add / yarn add / bun add。

@0xgw/passport-forcedotcom 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/0xgw__passport-forcedotcom 是否存在。

@0xgw/passport-forcedotcom 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@0xgw/passport-forcedotcom 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >= 0.4.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@0xgw/passport-forcedotcom 可以商用吗?

@0xgw/passport-forcedotcom 使用 BSD-3-Clause 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。另外不得用原作者名义为衍生产品背书。以上为概括,不构成法律意见,请以许可原文为准。

@0xgw/passport-forcedotcom 的下载量有多少?

根据 npm 官方下载统计,@0xgw/passport-forcedotcom 在 2026/10/04 – 2026/11/02 这 30 天内被下载 5,427 次,日均约 181 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@0xgw/passport-forcedotcom 还在维护吗?

最新版本 1.0.0 发布于 2022/02/14(4 年前);至今共发布 1 个版本,其中过去 12 个月发布了 0 个;首次发布于 2022/02/14。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。