back
bolt.new 生成、bookmark 修正+ d1 database連携
id: 178, 2024-10-17
概要:
bolt.new生成後、なかなかAI修正進まない部分を。自作で修正する内容です
- bookmarkデータを、d1 + CF workers連携します。
[ 公開日: 2024/10/16 ]
構成
- CF-workers
- D1 database
- bolt.new
- shadcn/ui
- Express.js
- esbuild
- typescript
作成したコード
https://github.com/kuc-arc-f/bolt_5example
dev-start
bun run build
bun run dev
- API接続URLは .envから取得
- 内部APIエンドポイント(中間API)
- src/routes/bookmarkRouter.ts
- https://github.com/kuc-arc-f/bolt_5example/blob/main/src/routes/bookmarkRouter.ts
....
router.post("/create", async function(req: any, res: any) {
const retObj = {ret: 500 , message: "" }
try {
if(!req.body){
throw new Error("nothing, body");
}
const body = req.body;
body.bmCategoryId = 0;
console.log(body);
const url = process.env.EXTERNAL_API_URL;
const path = "/api/bookmark/create";
console.log("path=", url + path);
const response = await axios.post(url + path, body,
{headers: { "Content-Type": "application/json"}
});
retObj.ret = 200;
retObj.data = response.data.data;
return res.json(retObj);
} catch (error) {
console.error(error);
res.sendStatus(500);
}
});
/**
*
* @param
*
* @return
*/
router.post("/get_list", async function(req: any, res: any) {
const retObj = {ret: 500 , message: "" }
try {
const url = process.env.EXTERNAL_API_URL;
const path = "/api/bookmark/get_list";
console.log("path=", url + path);
const response = await axios.post(url + path, req.body,
{headers: { "Content-Type": "application/json"}
});
retObj.ret = 200;
retObj.data = response.data;
//console.log(response.data);
return res.json(retObj);
} catch (error) {
console.error(error);
res.sendStatus(500);
}
});
- 画面側は、前回内部API連携済なので。修正は、ほぼ無し。