Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jeff-tian/passport-citi
passport strategy for authenticating with citi sandbox account
https://github.com/jeff-tian/passport-citi
citibank oauth2 openbanking passport-strategy passportjs
Last synced: about 12 hours ago
JSON representation
passport strategy for authenticating with citi sandbox account
- Host: GitHub
- URL: https://github.com/jeff-tian/passport-citi
- Owner: Jeff-Tian
- Created: 2019-06-10T13:01:20.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-12-07T03:10:26.000Z (12 months ago)
- Last Synced: 2024-11-09T18:19:10.551Z (7 days ago)
- Topics: citibank, oauth2, openbanking, passport-strategy, passportjs
- Language: JavaScript
- Size: 984 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
# passport-citi
> [Passport](http://passportjs.org/) strategy for authenticating with [Citi Account](https://sandbox.developerhub.citi.com/get-started)
[![Dependencies](https://david-dm.org/liangyali/passport-citi.svg)](https://david-dm.org/liangyali/passport-citi)
[![Build Status](https://travis-ci.com/Jeff-Tian/passport-citi.svg?branch=master)](https://travis-ci.com/Jeff-Tian/passport-citi)[![Quality gate](https://sonarcloud.io/api/project_badges/quality_gate?project=Jeff-Tian_passport-citi)](https://sonarcloud.io/dashboard?id=Jeff-Tian_passport-citi)
## 支持功能
- 花旗 Sandbox 账号登录(示例:https://pa-ca.me/)
- 获取花旗用户账号信息(示例:https://pa-ca.me/)
- 获取积分余额(WIP)
- 获取卡片列表(示例:https://pa-ca.me/pages/cards/cards)
- 充积分(WIP)
- 获取 Onboarding 产品列表(示例:https://pa-ca.me/pages/products/all)## 在线演示
- https://pa-ca.me
## 安装
npm install passport-citi --save
## 使用
#### Configure Strategy
```js
passport.use(new CitiStrategy({
appID: {APPID},
name:{默认为wechat,可以设置组件的名字}
appSecret: {APPSECRET},
client:{wechat|web},
callbackURL: {CALLBACKURL},
scope: {snsapi_userinfo|snsapi_base},
state:{STATE},
getToken: {getToken},
saveToken: {saveToken}
},
function(accessToken, refreshToken, profile,expires_in, done) {
return done(err,profile);
}
));The `callbackURL`, `scope` and `state` can be overwritten in `passport.authenticate` middleware.
The `getToken` and `saveToken` can be provided to initialize Wechat OAuth instance.
```#### Authenticate Requests
```js
router.get("/auth/citi", passport.authenticate("citi", options));
````options` - Optional. Can include the following:
- `state` - Override state for this specific API call
- `callbackURL` - Override callbackURL for this specific API call
- `scope` - Override scope for this specific API callIf no callbackURL is specified, the same request url will be used.
#### Authentication Callback
```js
router.get(
"/auth/citi/callback",
passport.authenticate("citi", {
failureRedirect: "/auth/fail",
successReturnToOrRedirect: "/"
})
);
```## License
Copyright (c) 2014 liangyali
Licensed under the MIT license.