用NodeJS来入门deta(几乎是为了自己的备忘录)
数据(基本上)
这是我一直以来想要的东西,虽然之前没有,但现在终于有了。最好的Baas(?)。免费、无需信用卡、简单。非常满意,太棒了。
-
- データベース(NoSQL)
-
- Faas (lambdaとかFirebase functions みたいなやつ)
- ストレージ
这些非常方便使用。
这是重要的事情,所以我要再说一遍。
非常方便易用。
安装等等
命令行安装
# Windowsの方 (PowerShellで実行してください!)
iwr https://get.deta.dev/cli.ps1 -useb | iex
# macの方
curl -fsSL https://get.deta.dev/cli.sh | sh
因为我是Windows用户,所以没试过mac。如有错误,请原谅。
安装软件包
npm init -y
yarn add deta
共同点
准备好各种导入文件。
const { Deta } = require("deta") ;
const deta = Deta(process.env.DETA_PROJECT_KEY) ;
由于工程密钥属于机密信息,请将其记录在.env等文件中。
DETA_PROJECT_KEY=〇〇〇...
微观
Faas,在云上瞬时运行的环境。
各种设定完成。
在不同的项目中启动 Micro,或者直接在顶层文件夹下创建项目似乎更好。
deta new --node プロジェクト名
代码 (Daima)
const express = require('express')
const app = express()
app.get('/', (req, res) => {
const reqBody = req.body ;
res.status(200).json({
msg:"ok",
reqBody,
});
}) ;
module.exports = app ;
根据用户需求,只需要一种选择方法,用中文将以下内容重新表达:基础
DBaas,云数据库
const usersDb = deta.Base("users") ;
//async 関数内で実行
usersDb.put(
{ name:"TBSten", job:"エンジニア", }
);
const userList = await usersDb.fetch() ;
userList.items.forEach(el=>{
console.log(el);
});
开车
储存容量似乎大约为10GB左右
const photos = deta.Drive("photos") ;
//async 関数内で実行
await photos.put(
"test.png",
{path: "test/GitHub-Mark.png"}
) ;
根据我个人的看法,可以用这样的文件夹结构。
lib/
+- deta/
+-deta.js //detaをエクスポート
+-base.js //deta.jsのdetaからbaseと各テーブルをエクスポート
+-drive.js //deta.jsのdetaからdriveと各フォルダをエクスポート
+-
+- ...(自作ライブラリなど)...
server/
+- node_module/
+- ...
+- index.js //expressでルート分岐
请参考以下网站
公式文件(尽管是英语,但翻译后很容易理解)。
自言自语
由于所需功能已经十分齐全,因此我们计划在未来的服务中采用。