{"id":14975513,"url":"https://github.com/bezkoder/jwt-refresh-token-node-js-mongodb","last_synced_at":"2025-08-16T10:50:03.209Z","repository":{"id":40436922,"uuid":"370565970","full_name":"bezkoder/jwt-refresh-token-node-js-mongodb","owner":"bezkoder","description":"JWT Refresh Token implementation in Node.js example with Express, MongoDB","archived":false,"fork":false,"pushed_at":"2021-07-01T01:13:08.000Z","size":61,"stargazers_count":52,"open_issues_count":3,"forks_count":64,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-08T09:47:42.816Z","etag":null,"topics":["authentication","authorization","jwt","mongodb","mongoose","mongoosejs","node","nodejs","refresh-token","token-based-authentication"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bezkoder.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-05-25T04:42:05.000Z","updated_at":"2025-02-09T19:11:52.000Z","dependencies_parsed_at":"2022-08-09T20:21:05.428Z","dependency_job_id":null,"html_url":"https://github.com/bezkoder/jwt-refresh-token-node-js-mongodb","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/bezkoder/jwt-refresh-token-node-js-mongodb","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bezkoder%2Fjwt-refresh-token-node-js-mongodb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bezkoder%2Fjwt-refresh-token-node-js-mongodb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bezkoder%2Fjwt-refresh-token-node-js-mongodb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bezkoder%2Fjwt-refresh-token-node-js-mongodb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bezkoder","download_url":"https://codeload.github.com/bezkoder/jwt-refresh-token-node-js-mongodb/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bezkoder%2Fjwt-refresh-token-node-js-mongodb/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270702479,"owners_count":24630873,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-16T02:00:11.002Z","response_time":91,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["authentication","authorization","jwt","mongodb","mongoose","mongoosejs","node","nodejs","refresh-token","token-based-authentication"],"created_at":"2024-09-24T13:52:08.840Z","updated_at":"2025-08-16T10:50:03.180Z","avatar_url":"https://github.com/bezkoder.png","language":"JavaScript","readme":"# Node.js JWT Refresh Token with MongoDB example\nJWT Refresh Token Implementation with Node.js Express and MongoDB. You can know how to expire the JWT, then renew the Access Token with Refresh Token.\n\nFor instruction, please visit:\n\u003e [Node.js JWT Refresh Token with MongoDB example](https://bezkoder.com/jwt-refresh-token-node-js-mongodb/)\n\nThe code in this post bases on previous article that you need to read first:\n\u003e [Node.js + MongoDB: User Authentication \u0026 Authorization with JWT](https://bezkoder.com/node-js-mongodb-auth-jwt/)\n\n## User Registration, User Login and Authorization process.\n\nThe diagram shows flow of how we implement User Registration, User Login and Authorization process.\n\n![jwt-token-authentication-node-js-example-flow](jwt-token-authentication-node-js-example-flow.png)\n\nAnd this is for Refresh Token:\n\n![jwt-refresh-token-node-js-example-flow](jwt-refresh-token-node-js-example-flow.png)\n\n## More Practice:\n\u003e [Node.js, Express \u0026 MongoDb: Build a CRUD Rest Api example](https://bezkoder.com/node-express-mongodb-crud-rest-api/)\n\n\u003e [Server side Pagination in Node.js with MongoDB and Mongoose](https://bezkoder.com/node-js-mongodb-pagination/)\n\nAssociations:\n\u003e [MongoDB One-to-One relationship tutorial with Mongoose examples](https://bezkoder.com/mongoose-one-to-one-relationship-example/)\n\n\u003e [MongoDB One-to-Many Relationship tutorial with Mongoose examples](https://bezkoder.com/mongoose-one-to-many-relationship/)\n\n\u003e [MongoDB Many-to-Many Relationship with Mongoose examples](https://bezkoder.com/mongodb-many-to-many-mongoose/)\n\nFullstack:\n\u003e [Vue.js + Node.js + Express + MySQL example](https://bezkoder.com/vue-js-node-js-express-mysql-crud-example/)\n\n\u003e [Vue.js + Node.js + Express + PostgreSQL example](https://bezkoder.com/vue-node-express-postgresql/)\n\n\u003e [Vue.js + Node.js + Express + MongoDB example](https://bezkoder.com/vue-node-express-mongodb-mevn-crud/)\n\n\u003e [Angular 8 + Node.js + Express + MySQL example](https://bezkoder.com/angular-node-express-mysql/)\n\n\u003e [Angular 8 + Node.js + Express + PostgreSQL example](https://bezkoder.com/angular-node-express-postgresql/)\n\n\u003e [Angular 8 + Node.js + Express + MongoDB example](https://bezkoder.com/angular-mongodb-node-express/)\n\n\u003e [Angular 10 + Node.js + Express + MySQL example](https://bezkoder.com/angular-10-node-js-express-mysql/)\n\n\u003e [Angular 10 + Node.js + Express + PostgreSQL example](https://bezkoder.com/angular-10-node-express-postgresql/)\n\n\u003e [Angular 10 + Node.js + Express + MongoDB example](https://bezkoder.com/angular-10-mongodb-node-express/)\n\n\u003e [Angular 11 + Node.js Express + MySQL example](https://bezkoder.com/angular-11-node-js-express-mysql/)\n\n\u003e [Angular 11 + Node.js + Express + PostgreSQL example](https://bezkoder.com/angular-11-node-js-express-postgresql/)\n\n\u003e [Angular 11 + Node.js + Express + MongoDB example](https://bezkoder.com/angular-11-mongodb-node-js-express/)\n\n\u003e [React + Node.js + Express + MySQL example](https://bezkoder.com/react-node-express-mysql/)\n\n\u003e [React + Node.js + Express + PostgreSQL example](https://bezkoder.com/react-node-express-postgresql/)\n\n\u003e [React + Node.js + Express + MongoDB example](https://bezkoder.com/react-node-express-mongodb-mern-stack/)\n\nIntegration (run back-end \u0026 front-end on same server/port)\n\u003e [Integrate React with Node.js Restful Services](https://bezkoder.com/integrate-react-express-same-server-port/)\n\n\u003e [Integrate Angular with Node.js Restful Services](https://bezkoder.com/integrate-angular-10-node-js/)\n\n\u003e [Integrate Vue with Node.js Restful Services](https://bezkoder.com/serve-vue-app-express/)\n\n## Project setup\n```\nnpm install\n```\n\n### Run\n```\nnode server.js\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbezkoder%2Fjwt-refresh-token-node-js-mongodb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbezkoder%2Fjwt-refresh-token-node-js-mongodb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbezkoder%2Fjwt-refresh-token-node-js-mongodb/lists"}