This example demonstrates how to use Express 4.x andPassport to log users in with Facebook.Use this example as a starting point for your own web applications.
To get started with this example, clone the repository and install thedependencies.
$ git clone git@github.com:passport/express-4.x-facebook-example.git
$ cd express-4.x-facebook-example
$ npm install
This example requires credentials from Facebook, which can be obtained bycreating anapp in the App Dashboard.The OAuth redirect URI of the app should be set to: http://localhost:3000/oauth2/redirect/www.facebook.com
Once credentials have been obtained, create a .env
file and add the followingenvironment variables:
FACEBOOK_CLIENT_ID={{INSERT_APP_ID_HERE}}
FACEBOOK_CLIENT_SECRET={{INSERT_APP_SECRET_HERE}}
Start the server.
$ npm start
Navigate to http://localhost:3000
.
This example illustrates how to use Passport andthe passport-facebook
strategy within an Express application to log users inwith Facebook.
The example builds upon the scaffolding created by Express generator,and uses EJS as a view engine and plain CSS for styling. Thisscaffolding was generated by executing:
$ express --view ejs express-4.x-facebook-example
The example uses SQLite for storing user accounts.SQLite is a lightweight database that works well for development, including thisexample.
Added to the scaffolding are files which add authentication to the application.
This file initializes the database by creating the tables used to store useraccounts and credentials.
This file initializes Passport. It configures the Facebook strategy andsupplies the serialization functions used for session management.
This file defines the routes used for authentication. In particular, thereare three routes used to authenticate with Facebook:
GET /login
This route renders a page that prompts the user to login with Facebook.
GET /login/federated/www.facebook.com
This route begins the authentication sequence by redirecting the user toFacebook.
POST /oauth2/redirect/www.facebook.com
This route completes the authentication sequence when Facebook redirects theuser back to the application. When a new user logs in, a user account isautomatically created and their Facebook account is linked. When anexisting user returns, they are logged in to their linked account.
喜大普奔,express 4.x api中文翻译第一版出来了,本人利用零碎的时间,花了一个多月的时间初步翻译完成,其中那面有很多笔误和专业知识错误,希望路过的各位指正。 github:https://github.com/ZhouBox/express_api_4.x_chinese.git
简介 利用nodejs中http创建的服务器,在处理请求的时候,只能放在一个回调函数中,且判断也较为复杂。为了方便基于nodejs服务器的开发,有人对nodejs服务器的创建、请求处理等操作,进行了封装,比较常见的就是express。 可以说,express就是基于nodejs封装的一个框架,专业用于提供方便易操作的web服务器。 Express的本质:就是一个npm上的第三方包,提供了快速创建w
持续更新,一边学习一边翻译整理。 app.use([path,] function [, function…]) 执行指定路径上的 中间件。path 参数默认为“/”。 路由将会匹配所有包含[path]参数的路径。如:app.use('/apple',...)会匹配"/apple","/apple/images","/apple/images/news"等。 注意,中间件的 req.origin
Request req对象代表了一个HTTP请求,其具有一些属性来保存请求中的一些数据,比如query string,parameters,body,HTTP headers等等。在本文档中,按照惯例,这个对象总是简称为req(http响应简称为res),但是它们实际的名字由这个回调方法在那么使用时的参数决定。 如下例子: app.get('/user/:id', function(req
express版本4.x 1.页面表单 <form method="POST" enctype="multipart/form-data"> <input type="file" name="file"/> <input type="submit" value="上传"/> </form> 2.nodejs后台处理 在app.js里加入 var mu
1、cookie req.cookies.XX 获取 res.cookie(name,value,{maxAge:0}) //设置cookie maxAge 用来设置过期时间,单位为s 也就是秒而不是 ms 毫秒。 清除cookie可以设置值为undefined 2、session req.session 获取 req.session.XX = 设置session app.use(sessio
在express3.x中,使用session 和cookie要使用中间件,必须安装connect 而在express4.0中,要使用session和cookie,安装方法则不同,不是安装connect,而是cookieParser 详情见,https://github.com/senchalabs/connect 不同之处:https://github.com/visionmedia/expres
From: http://sumit-theaxfactor.spaces.live.com/blog/cns!596957786228C73F!208.entry In this article, I am going to demonstrate different email techniques that can be used in AX 4.0. Following classes c
最近在看express,可是在工作中根本用不到,那我就来翻译他们的文档,学习其文档,目前来说再好不过,同时也是为大家学习express提供一点方便。 原文路径:http://expressjs.com/4x/api.html。 这个只是部分,还有就是我不是web出生,有些专业词汇翻译很烂,还有就是我的英语也比较烂。 项目地址:https://git.oschina.net/zhouX/expres
Expres 4.x API 详解 说明 Express 是一个精简的、灵活的 Node.js Web 程序框架,为构建单页、多页及混合的 Web 程序提供了一系列健壮的功能特性,可以快速的搭建一个完整功能的网站。 参考 Node与Express开发 Express 官网 JavaScript 标准参考教程 node.js Express 4.x API 3. API 1. express exp
This example illustrates how to use Express 4.x andPassport to sign users in with a username andpassword. Use this example as a starting point for your own web applications. Quick Start To get started
express() Creates an Express application. The express() function is a top-level function exported by the express module. var express = require('express') var app = express() Methods express.json([opt
问题内容: 如何与Socket.io 1.0和Express 4.x共享会话?我使用Redis商店,但我认为这没有关系。我知道我必须使用中间件来查看cookie和获取会话,但是不知道如何。我搜索了但找不到任何工作 问题答案: 解决方案非常简单。它只是没有很好的记录。也可以通过如下所示的小型适配器将快速会话中间件用作Socket.IO中间件: 这是Express 4.x,Socket.IO 1.x和
问题内容: 我刚刚开始在Node.js应用程序中学习Express 4.0,我发现它生成了文件,在该文件上仅写入了应用程序服务器和端口设置,并且在文件中定义了其他所有内容(例如中间件和路由)。 但是,我不确定这是做什么的。我使用Express 3.x,并且始终在同一文件中定义服务器和端口设置以及路由和中间件,并使用来启动我的节点应用程序。那么使用的意义何在?它仅将服务器和端口定义与其他定义分开吗?
问题内容: 我正在使用Express 4.0,并且我知道主体解析器已从Express核心中移除,我使用的是推荐的替代品,但是我得到了 我在哪里可以找到这个所谓的中间件?还是我不应该得到这个错误? 问题答案: 这意味着自2014年6月19日起,不赞成使用 构造函数 。 您现在需要分别调用方法 等等。 如果仍然收到警告,则需要使用 在现在的配置对象的关键需要明确的被传递,因为它现在已经没有默认值。 如
服务器端(app.js) var app = require('express')(); var server = require('http').Server(app); var io = require('socket.io')(server); server.listen(80); app.get('/', function (req, res) { res.sendfile(__d