2017-08-05 87 views
0

提供一种用于云函数的HTTP API混合所有HTTP方法为一个API调用:实现与火力地堡云REST接口功能

functions.https.onRequest((req, res) => { ... }); 

这需要一个开关以分离出的GET,柱,提出和DELETE 。有没有类似于Express API的更好的方法:

app.get() 
app.post() 
app.put() 
app.delete() 

这将允许我们更干净地实现基于资源的端点。

回答

6

Cloud Functions for Firebase允许您提供一个Express.js应用程序来实现HTTP API(或其他任何您想要使用Express.js应用程序执行的操作)。

你可以在this sample code中看到这个例子。

需要注意的重要事情是,你可以创建一个明确的应用程序,你想要的端点配置它,并把它交给云功能:

const express = require('express'); 
const app = express(); 
app.get('/hello', (req, res) => { 
    res.send(`Hello ${req.user.name}`); 
}); 
exports.app = functions.https.onRequest(app); 
+0

这是完美的!感谢您的快速响应,@doug_stevenson – Naresh

+0

超级奇怪的是,云功能只是Express的包装,但很有帮助,谢谢。 – corysimmons

+0

@corysimmons Express是一个非常流行的构建http应用程序的框架。利用这样的东西是有道理的,因为它很熟悉和防弹。 –