2021、07/07水曜日
8975 ワード
TIL
今日やったこと
今日は
作成中のログインコストエントリ構造と機能が作成されました.
それぞれ異なる機能を記述しています.import phash from "./components/passwordHash";
import rsalt from "./components/randomSalt";
import mkToken from "./components/makeToken";
import dbuser from "./dbcontroller/user/index";
//중간 생략 //
router.post("/signin", dbuser.get(), phash, mkToken, (req, res) => {
if (res.locals.password === res.locals.password) {
res.cookie(`refreshToken`, res.locals.refreshToken, {
maxAge: 24 * 6 * 60 * 10000,
sameSite: "none",
httpOnly: true,
secure: true,
});
res.cookie(`iskakao`, false, {
maxAge: 24 * 6 * 60 * 10000,
sameSite: "none",
httpOnly: true,
secure: true,
});
res.status(200).json({
message: "로그인 되었습니다.",
accessToken: res.locals.accessToken,
});
} else {
res.status(403).json({ message: "잘못된 비밀번호" });
}
});
router.post(
"/signup",
upload.single("userImage"),
rsalt,
phash,
dbuser.exist(false),
dbuser.insert,
(req, res) => {
res.status(200).send("signup");
}
);
図示のように、個別機能はミドルウェアとして順次行われ、個別プロセス毎に対応する機能のみが行われるように構成されている.全体的に、構造は複雑で複雑になっているようです.もちろん、短い構造でそうする必要はありませんが、この時間構造自体は実行部分をすべて打ち出す構造なので、複数の段階を経る必要がある場合は、コールバックのように内部で結果の結果が得られなければならないので、この欠点を補うために、このように裁断しました.
もちろん,当時はfromisのthenとcatchを用いて順序付けを行っていたが,この場合,エラーの生成によりcatchが集中するため,問題のどの部分が問題であるかを特定することが難しく,単独のエラー処理方式を採用することが困難であったため,ミドルウェア方式で行った.
Reference
この問題について(2021、07/07水曜日), 我々は、より多くの情報をここで見つけました
https://velog.io/@karuiner/20210707-수요일
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
import phash from "./components/passwordHash";
import rsalt from "./components/randomSalt";
import mkToken from "./components/makeToken";
import dbuser from "./dbcontroller/user/index";
//중간 생략 //
router.post("/signin", dbuser.get(), phash, mkToken, (req, res) => {
if (res.locals.password === res.locals.password) {
res.cookie(`refreshToken`, res.locals.refreshToken, {
maxAge: 24 * 6 * 60 * 10000,
sameSite: "none",
httpOnly: true,
secure: true,
});
res.cookie(`iskakao`, false, {
maxAge: 24 * 6 * 60 * 10000,
sameSite: "none",
httpOnly: true,
secure: true,
});
res.status(200).json({
message: "로그인 되었습니다.",
accessToken: res.locals.accessToken,
});
} else {
res.status(403).json({ message: "잘못된 비밀번호" });
}
});
router.post(
"/signup",
upload.single("userImage"),
rsalt,
phash,
dbuser.exist(false),
dbuser.insert,
(req, res) => {
res.status(200).send("signup");
}
);
Reference
この問題について(2021、07/07水曜日), 我々は、より多くの情報をここで見つけました https://velog.io/@karuiner/20210707-수요일テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol