Low Code/No Code
构建可扩展的 AI 驱动的 Web 应用程序与 Lovable AI 和 Back4App
14 分
企业家现在可以通过结合人工智能驱动的开发工具和可扩展的后端服务快速构建任何网络应用程序。 本教程提供了一个完整的路线图,介绍如何构建一个 个人财务助手 – 从最初的 规划 到一个 人工智能生成的前端 (可爱的人工智能),一个强大的 back4app 后端 , stripe 货币化 , 最后 扩展和安全最佳实践 适用于 b2c 平台。 到最后,您将拥有一个清晰、可操作的计划来启动您自己的人工智能驱动的财务助手。 1\ 使用 llms 进行软件规划 在编写任何代码之前,首先利用大型语言模型 (llms) 来规划您的软件。 现代推理能力模型如 anthropic claude 3 7 , openai gpt 4 , 和 deepseek r1 可以将一个简单的想法转变为详细的项目蓝图。 实际上, “llms 可以有效地从简单的项目大纲生成详细的项目描述,并将项目分解为任务。” ( 利用 llms 管理我的项目 (第一部分) medium https //medium com/@docherty/can llms help me manage my projects part 1 ee4342b1ca0a# text=llms%20can%20effectively%20generate%20detailed,the%20project%20down%20into%20tasks ) 使用这些人工智能工具作为您的头脑风暴伙伴和架构师: 定义愿景: 编写一个清晰描述个人财务助手的目标、目标用户和核心功能的提示。例如: prompt i want to build an ai driven personal finance assistant for consumers it should track expenses, set budgets, and provide advice via a chatbot interface the platform needs a mobile friendly web frontend and a scalable backend as a seasoned software architect, outline the system architecture and key features for this application 发生了什么? 一个先进的推理 llm(claude 3 7,gpt o3,deepseek r1 等)将通过这个提示进行推理,并通常以有组织的方式回应——例如用户认证、交易跟踪模块、预算模块、ai 顾问模块,以及技术栈的建议(前端、后端、数据库)。它可能会建议使用一个 web 框架来构建用户界面,并使用 baas(后端即服务)来快速开发。请参见下面使用 claude 3 7 和 openai gpt o3 mini hight 的结果: claude 3 7 personal finance assistant architecture i'll outline a comprehensive system architecture for your ai driven personal finance assistant, focusing on key components, technologies, and features system architecture overview frontend components mobile responsive web app built with react js or vue js user authentication portal secure login with mfa dashboard visualization of financial data and budget progress expense tracking interface manual entry and receipt scanning chatbot interface natural language interaction for queries and advice backend services api gateway entry point managing authentication and routing user service manages profiles, preferences, and authentication finance engine core logic for categorization, analysis, and insights ml/ai service powers the chatbot and provides personalized insights notification service delivers alerts and reminders data store securely manages financial data and user information data architecture relational database for structured financial data and user information (postgresql) nosql database for flexible storage of unstructured data (mongodb) data warehouse for analytics and reporting (snowflake) vector database for semantic search and ai features (pinecone) key technical features bank integration open banking apis for account aggregation plaid/tink for connection to financial institutions real time transaction syncing expense categorization ml based automatic categorization custom category creation rule based recategorization budget management multiple budget creation (monthly, annual, project based) envelope budgeting system progress tracking and visualizations ai chatbot assistant natural language processing for financial queries contextual awareness of user's financial situation personalized financial advice and recommendations proactive insights based on spending patterns security & compliance end to end encryption for financial data gdpr and ccpa compliance soc 2 compliance for financial information handling regular security audits and penetration testing scalability considerations containerization docker for consistent deployment orchestration kubernetes for scaling services microservices decomposed architecture for independent scaling serverless functions for variable workload components cdn for global content delivery optimization development & deployment strategy ci/cd pipeline automated testing and deployment feature flagging for controlled feature rollouts a/b testing framework for optimizing user experience monitoring & analytics real time system performance and user behavior tracking would you like me to expand on any particular aspect of this architecture? gpt o3 mini 1 system overview user centric design a mobile responsive web application that prioritizes ease of use and accessibility scalable backend a microservices based backend that can scale horizontally to accommodate increasing users and data volume ai powered interaction integration of natural language processing (nlp) for the chatbot, which offers personalized financial advice 2\ frontend responsive ui/ux use modern javascript frameworks (e g , react, vue js, or angular) to develop a responsive interface optimized for mobile devices consider a progressive web app (pwa) approach to blend native app like experiences with web accessibility user features dashboard quick overview of spending, budgets, and alerts expense tracking forms and visualizations (graphs, charts) to monitor spending habits budget management tools for setting up and adjusting budgets chat interface an embedded ai chatbot for financial advice, queries, and suggestions 3\ backend architecture api gateway acts as the entry point for all client requests handles routing, load balancing, authentication, and rate limiting microservices architecture user service manages registration, login, and user profiles expense & budget service tracks transactions, categorizes spending, and monitors budget limits chatbot service interfaces with nlp models (e g , using openai’s api or in house models) to deliver interactive advice analytics service processes transaction data to offer insights, anomaly detection, and personalized recommendations notification service sends alerts, reminders, or budget warnings via email, sms, or in app messages scalability use containerization (docker) and orchestration (kubernetes) for microservices deploy on cloud platforms (aws, gcp, azure) that support auto scaling and load balancing data layer relational databases for structured data such as user profiles, transaction records, and budgets (e g , postgresql or mysql) nosql databases for storing session data, logs, and semi structured data (e g , mongodb or cassandra) data warehouse/data lake for historical data analysis and training machine learning models 4\ ai & chatbot integration natural language processing (nlp) integrate an ai engine (via apis or an in house model) to interpret user queries and provide actionable advice use machine learning models to analyze spending habits and offer personalized recommendations conversational interface build a dialogue manager to maintain context during multi turn conversations integrate with the backend analytics to fetch real time insights and recommendations based on user data feedback loop incorporate user feedback to continuously train and refine the ai models implement monitoring tools to track performance and user satisfaction with the chatbot 5\ integration & security third party integrations connect to financial data aggregators (e g , plaid) for real time expense tracking from bank accounts integrate with secure payment gateways for any financial transactions security & compliance use oauth 2 0 / openid connect for secure authentication ensure data encryption both in transit (tls/ssl) and at rest comply with data privacy regulations (gdpr, ccpa) through anonymization and user consent management monitoring & logging implement centralized logging and monitoring (using tools like elk stack, prometheus, or grafana) setup alerting for suspicious activities or system performance issues 6\ key features expense tracking manual entry and automated tracking (via bank integrations) categorization of expenses with trend analysis budget setting & alerts customizable budgets with real time tracking alerts for overspending or upcoming bill reminders personalized financial advice chatbot interface that uses nlp to answer financial queries tailored advice based on spending habits, savings goals, and budgeting history analytics & reporting visual dashboards that display spending trends, budget status, and financial health metrics periodic reports and insights that help users optimize their finances user engagement gamification elements such as rewards or progress tracking in app notifications and personalized tips to encourage financial discipline 优化架构: 接下来,提示llm提供每个组件的更多细节。例如,询问它详细说明 前端与后端的职责 以及ai助手功能将如何工作: break down the architecture what should the front end handle vs the back end? how will the ai chatbot provide financial advice – via an api call to an llm (e g , openai)? suggest how to integrate an ai model for insights, and recommend a tech stack (e g , use an ai frontend builder like lovable and a backend like back4app) 预期结果: llm可能会提出一个客户端 服务器设计,其中 frontend (网页或移动应用)处理用户界面(费用输入表单、仪表板、聊天界面),而 backend 处理数据存储、业务逻辑和对ai服务的调用。它可能会建议使用 lovable ai 进行快速前端生成,并使用 back4app (parse platform) 作为后端,考虑到它们的可扩展性和速度。响应可能会概述数据模型(例如,一个 user 类, transaction 类, budget 类)以及聊天机器人功能如何调用llm api以获取建议。不要犹豫进行迭代:如果有不清楚的地方,请提出后续问题。目标是一个 结构化的实施计划 涵盖所有主要功能。 功能和任务细分: 最后,使用llm生成一个 功能列表和开发任务列表 。这确保您有一个清晰的mvp路线图。例如: prompt "list all key features for the mvp and sub tasks to implement each include frontend pages/components needed and backend apis or cloud functions needed organize it by priority " 预期结果: 模型将列出以下功能: 用户注册/登录 , 费用输入表单 , 预算创建 , 带有支出摘要的仪表板 , 用于财务建议的ai聊天机器人 , 等等,以及子任务。它可能会说:“ 身份验证 – 构建注册/登录页面(前端)和用户管理api(后端); 费用跟踪 – 费用输入ui,后端端点以保存交易; 预算编制 – 设置预算的ui,后端逻辑以计算剩余预算; ai建议聊天机器人 – 在后端集成ai api(openai)以分析用户支出并返回建议” – 依此类推。您还可以请求一个 技术栈推荐 :例如,“ “推荐用于图表、通知和任何第三方集成(如stripe支付)的库或服务。” llm的回答可以为您的选择提供信息(例如,建议一个图表库或提醒安全措施)。 在这个规划阶段结束时,您应该拥有一个 llm生成的规范 :一个功能列表、一个架构大纲和技术栈建议。将其视为一个起始蓝图——您可以根据自己的见解随时进行调整——但它通过ai辅助推理显著加速了规划过程。 2\ 使用可爱的ai进行mvp开发(前端) 有了计划,你可以快速构建 最小可行产品(mvp) 前端,使用 可爱的ai , 这是一个由ai驱动的应用程序构建工具。可爱的ai将自然语言提示转换为可工作的web应用程序代码,使得 快速原型设计 和设计成为可能。通过用简单的英语描述你应用的用户界面和功能,你将 “看到它转变为一个具有美丽美学的完全功能应用程序。” ( 可爱的 https //lovable dev/# text=creating%20software%20has%20never%20been,functional%20application%20with%20beautiful%20aesthetics ) 这个工具是 手动编码的20倍速度 – 你只需描述你的想法,可爱的ai就会为你生成代码和用户界面 ( 可爱的 https //lovable dev/# text= )。以下是如何利用它为我们的个人财务助手服务 2 1 设置可爱的并开始一个新项目 注册: 前往 lovable ai 网站 https //lovable dev 并创建一个账户(如果您还没有的话)。登录后,从您的仪表板创建一个新项目 ( lovable ai:终极入门指南 https //codeparrot ai/blogs/lovable ai the ultimate beginner guide# text=1 )。您将看到一个文本输入框(提示界面),在这里您可以描述您的应用程序。 初始提示 – 描述您的应用: 在新项目中,输入您财务助手应用的详细描述。例如: 提示: "个人财务助手应用程序,面向消费者。该应用程序具有:注册/登录页面;一个仪表板,显示用户当前月份的预算与支出;一个添加支出的表单(金额、类别、日期);一个按类别设置每月预算的页面;以及一个ai聊天机器人页面,助手回答财务问题。设计应简洁、现代,语气友好(例如,一个聊天机器人头像图标)。使其适应移动设备。" lovable 将处理此提示并生成您应用的基础前端 ( lovable ai:终极入门指南 https //codeparrot ai/blogs/lovable ai the ultimate beginner guide# text=once%20you%e2%80%99re%20logged%20in%2c%20click,application%2c%20including%20design%20and%20functionality )。几秒钟内,您将根据您的描述生成多个页面和用户界面组件——从表单到图表 ( lovable ai:终极入门指南 https //codeparrot ai/blogs/lovable ai the ultimate beginner guide# text=lovable%20ai%20is%20an%20innovative,pleasing%20designs%20and%20robust%20functionality ) ( lovable https //lovable dev/# text=creating%20software%20has%20never%20been,functional%20application%20with%20beautiful%20aesthetics )。这个初始版本可能包含占位符数据和基本导航。 查看生成的用户界面: 在 lovable 编辑器中浏览生成的页面。您可能会看到一个注册表单,一个带有虚拟图表或列表的仪表板,以及一个聊天机器人界面区域。如果它不完美也不用担心—— lovable 的强项是迭代改进 ( lovable ai:终极入门指南 https //codeparrot ai/blogs/lovable ai the ultimate beginner guide# text=development%20process,the%20sharing%20and%20feedback%20process )。您现在有一个起点可以进行调整。 2 2 通过迭代提示优化ui/ux lovable ai允许您与ai进行 对话以微调应用程序 您可以选择元素并给出编辑指令,或者仅在新的提示中描述更改。这种对话式的迭代增强是一个核心功能(ai将实时调整布局、文本,甚至功能) ( lovable ai:终极初学者指南 https //codeparrot ai/blogs/lovable ai the ultimate beginner guide# text=development%20process,the%20sharing%20and%20feedback%20process ) 这里是一些优化步骤 调整视觉设计: 例如,如果仪表板已生成但您想要不同的样式或布局,请相应地指示lovable: 提示: "让仪表板显示按类别划分的支出饼图,并为'剩余预算'添加一个摘要卡片。整个应用程序使用宁静的蓝绿色配色方案。" lovable将应用这些更改——添加饼图组件并根据要求调整主题颜色。它遵循现代用户体验原则,因此更改仍应看起来专业( lovable https //lovable dev/# text= )。 调整布局和文本: 如果某些文本或标签不理想,您可以直接编辑它们或提示ai:例如,“将‘ai聊天机器人’页面标题重命名为‘询问finbot(ai助手)’,并在标题下方添加简要描述。”您还可以在编辑器中单击组件并输入指令(lovable的 选择和编辑 功能)以进行细微更改( lovable https //lovable dev/# text= )。例如,单击注册表单并请求额外字段(如“姓名”除了电子邮件/密码),ai将修改表单。 添加缺失元素: 如果最初没有生成某些内容(例如通知图标或设置页面),您可以提示: “添加一个设置页面,用户可以在其中更新他们的个人资料并切换预算警报的电子邮件通知。” ai将根据描述创建一个新页面或组件,并在适当时将其集成到导航中。 改善用户体验流程: 确保用户旅程顺畅。例如,在表单中添加费用后,应用程序应显示更新的列表或确认。您可以提示: “在用户提交添加费用表单后,显示确认消息‘费用已添加’并更新仪表板总计。” lovable可以插入必要的前端逻辑(在后台使用js/react)以反映这一点。在此阶段,数据可能是静态的或存储在临时状态中——我们将很快将其连接到真实的后端。 在这些改进过程中, 测试应用程序预览 以验证用户界面更改。lovable 提供实时预览渲染( lovable https //lovable dev/# text= )。例如,您应该能够从登录页面导航到仪表板(lovable 可能会模拟基本导航逻辑)。目标是使前端的外观和感觉接近您对 mvp 的期望。 2 3 为后端集成准备前端 现在用户界面已经准备好,确保您的 lovable 生成的前端能够连接到 back4app(我们的后端)。lovable 支持调用外部 api 和与数据库集成( lovable https //lovable dev/# text= )。我们将利用这一点来支持我们的 parse 后端: 添加 api 占位符: 确定前端需要与后端通信的位置。可能的点包括:当用户注册或登录时(调用注册/登录 api),添加交易时(将费用 post 到后端),获取仪表板数据时(get 最新总计),以及当 ai 聊天机器人请求建议时(调用一个后端端点以调用 ai)。在 lovable 中,您可能还没有实际的 api 调用,但可以在代码中放置函数或注释作为提醒。例如,在费用表单的 onsubmit 处理程序中,包含一个注释或伪代码,如 // todo 调用后端 api 保存费用 连接到 back4app (parse) sdk 或 api: lovable 允许包含 npm 包和进行 fetch 调用。您有两个主要的集成选项: 使用 parse rest/graphql api: 您可以让 lovable 直接通过 fetch 调用 back4app 的 rest 端点。例如,在我们设置后端类之后,创建新交易的 api 调用可能看起来像是对 https //parseapi back4app com/classes/transaction 的 post 请求,带有适当的头信息。在 lovable 中,您会将其包含在表单提交逻辑中。 (我们将在后端部分中介绍确切的 api 和密钥。) 使用 parse javascript sdk: 由于 lovable 允许您将代码同步到 github 并进行编辑,您可以安装 parse js sdk 以便更方便的前端集成。然而,为了简单起见,许多开发者使用直接的 rest 调用或云函数调用来实现 mvp。 使用虚拟数据进行测试: 在实际后端准备好之前,您可以在 lovable 中模拟 api 调用。例如,您可以让费用表单简单地将条目添加到填充仪表板的本地列表中(临时状态)。这确保了前端流程正常工作。一旦后端上线,您将用真实的 api 调用替换这些部分。 到这一步结束时,您应该拥有一个 完全设计的前端 用于您的个人财务助手 – 所有内容都是通过自然语言提示创建和完善的。您拥有这段代码(lovable 允许您导出或同步到您的 github) ( lovable https //lovable dev/# text=image%3a%20you%20own%20the%20code ) 现在是时候构建将为此应用程序的数据和 ai 功能提供支持的后端了。 3\ 使用 back4app (parse) 的后端实现 对于后端,我们使用 back4app , 这是一个托管的开源 parse 平台服务。back4app 提供了一个现成可用的可扩展后端,包含数据库、用户认证、云函数等功能 ( back4app 上 parse 平台的初学者指南 — sitepoint https //www sitepoint com/parse platform back4app beginner guide/# text=compared%20to%20individual%20setups %20,and%20integration%20with%20other%20services ) ( back4app 上 parse 平台的初学者指南 — sitepoint https //www sitepoint com/parse platform back4app beginner guide/# text=key%20takeaways ) 这意味着您可以专注于应用程序的逻辑,而无需担心服务器设置或可扩展性。我们将为财务设置数据库架构,实现安全的用户认证,并编写核心逻辑的云函数(预算、通知、ai 洞察)。 3 1 设置您的 back4app 应用和数据库 创建一个 back4app 应用: 登录 back4app 并创建一个新应用(如果你遵循了 llm 的建议,你可能在规划时已经完成了这一步) ( 如何构建 ai 助手后端:逐步指南! https //blog back4app com/ai assistant backend/# text=at%20this%20stage%20of%20the,the%20required%20cloud%20code%20functions ) back4app 将为你配置一个 parse 数据库。在你的应用仪表板中,打开 数据库浏览器 来定义你的数据类(表)。 定义数据模型: 根据我们的特性,规划出三个关键类: 用户 – back4app 已经内置了一个 用户 类用于身份验证。如果需要,我们可以通过额外的字段来扩展它(例如,“高级”标志或 stripe 客户 id,稍后会看到货币化)。 交易 – 存储每个支出/收入条目。常见字段: 金额 (数字) 收入为正,支出为负,或者始终为正并带有单独的类型字段。 类别 (字符串) – 例如,“食品”、“租金”、“娱乐”。 日期 (日期)– 交易发生的时间。 用户 (pointer< user>) – 指向拥有此交易的用户的指针。 (可选) 描述 (字符串)– 关于交易的备注。 预算 – 存储预算信息。您可能会有每个类别的预算或一般的月度预算: 月份 (字符串或日期) – 例如,“2025 03”来识别月份。 类别 (字符串,选填)– 如果按类别进行预算(或有一个特殊值,如“全部”用于整体预算)。 金额 (数字)– 该月(和类别)的预算限制。 用户 (指针< 用户>) – 拥有者。 设置类级安全性: 在编码之前,配置安全规则,以便数据按用户隔离。parse使用acl(访问控制列表)和类级权限(clp)来保护数据。 默认情况下,仅允许事务和预算类的所有者访问: 在back4app中,转到每个类的 安全性 设置: 禁用公共读/写访问。 为“认证用户”启用读/写权限(如果您希望任何登录用户访问, 或 更好:按对象使用acl)。 我们还将在保存对象时强制执行对象级别的acl。每个 事务 或 预算 条目将获得一个acl,仅允许拥有用户(也许还有管理员角色)读取。这确保了一个用户的财务数据对其他人保持私密( back4app上的parse平台初学者指南 — sitepoint https //www sitepoint com/parse platform back4app beginner guide/# text=authorization%20determines%20if%20an%20authenticated,two%20levels%20of%20access%20controls ) ( back4app上的parse平台初学者指南 — sitepoint https //www sitepoint com/parse platform back4app beginner guide/# text=parse%20uses%20access%20control%20lists,will%20always%20override%20acl%20permissions )。 3 2 实现用户认证 back4app 的 parse server 使用户认证变得简单: 注册与登录: 用户 类别开箱即用地处理此功能。您可以使用 rest api 调用或 parse sdk 来注册用户和登录。例如,通过 rest,向 /users 发送 post 请求,包含 用户名 和 密码 来创建用户;向 /login 发送 post 请求,包含凭据以登录(返回会话令牌)。如果在前端使用 parse js sdk,它提供了 parse user signup() 和 parse user login() 方法。 oauth(可选): 如果您想要社交登录(google、facebook 等),parse 通过其 sdk 支持这些功能,方法是链接认证数据。对于 mvp,使用用户名/电子邮件和密码是最简单的。 电子邮件验证: 考虑在 back4app 中启用电子邮件验证(以便用户确认他们的电子邮件),parse 可以通过发送电子邮件来处理此功能。这是可选的,但对于生产 b2c 应用程序来说是好的。 安全最佳实践: 永远不要传输或存储明文密码。parse内部处理哈希。您还应该强制使用强密码或使用第三方身份验证以确保安全。此外,使用https(back4app端点默认是https),以便凭据不会以明文形式通过网络发送。 3 3 将前端连接到后端 现在数据模型和身份验证已准备好,将您的lovable前端连接到此后端: api凭证: 在back4app中,获取您的 应用id 和 javascript密钥 (如果使用客户端sdk)或 rest api密钥 (用于直接rest调用)。这些可以在应用设置 > 安全性与密钥中找到。 绝不要在客户端暴露主密钥 – 它仅用于服务器端使用,具有完全权限。 rest api 示例: 要通过 rest 创建一个新事务,您需要发送一个 http post: post https //parseapi back4app com/classes/transaction headers x parse application id \<your app id> x parse rest api key \<your rest key> x parse session token \<user’s session token (after login)> body (json) { "amount" 50, "category" "food", "date" "2025 03 13t18 30 00z", "user" { " type" "pointer", "classname" " user", "objectid" "\<currentuserid>" } } 响应将包括新的交易的 objectid 。实际上,如果使用 js sdk,您可以简单地调用 parse user login() 然后为“transaction”创建一个 parse object 并保存,这样可以抽象出 http 调用。在 lovable 前端,您可以在提交费用表单时包含一个小脚本来完成此操作。 提示: 使用登录时的会话令牌来验证后续请求(安全存储,例如,根据需要存储在内存或本地存储中)。 云函数用于业务逻辑: 虽然直接的rest调用处理基本的crud,但对于更复杂的操作,您应该使用 云函数 。parse云函数在back4app的服务器(node js)上运行,并以安全、可扩展的方式允许自定义逻辑( 如何构建ai助手后端:逐步指南! https //blog back4app com/ai assistant backend/# text=to%20implement%20the%20backend%20logic%2c,side%20javascript%20code )。例如,我们可以编写一个函数来计算预算使用情况或一次性获取汇总仪表板: // in cloud code main js parse cloud define("getdashboarddata", async (request) => { const currentuser = request user; if (!currentuser) throw "not authorized"; // query transactions for this user for the current month const startofmonth = ; // e g first day of month const endofmonth = ; // e g first day of next month const query = new parse query("transaction"); query equalto("user", currentuser); query greaterthanorequalto("date", startofmonth); query lessthan("date", endofmonth); const results = await query find({ usemasterkey false }); // sum the amounts by category etc let totalspent = 0; let bycategory = {}; results foreach(tx => { }); // also get budget for this month return { totalspent, bycategory, budgetlimit, remaining budgetlimit totalspent }; }); 此功能(仅为示例)查询数据库并返回仪表板的结构化数据。您的可爱的前端可以通过 rest api 调用它: post /functions/getdashboarddata ,并使用会话令牌获取 json 响应。使用云函数集中逻辑并减少客户端的多次调用。 自动化财务洞察(ai集成): 突出的特点是基于ai的建议。为此,您可以在后端集成一个大型语言模型(如gpt 4)来分析用户数据并生成推荐。一个方法是使用云函数,当被调用时,收集用户最近的交易,格式化提示,并调用openai的api。 重要: 请将您的openai api密钥安全存储在back4app中。您可以将其添加为环境变量(back4app允许添加自定义环境变量或在云代码中使用配置)并 绝不要公开暴露它 ( stripe与支付 lovable文档 https //docs lovable dev/tips tricks/setting up payments# text=%2a%20use%20stripe%e2%80%99s%20no,paste%20the%20link%20into%20lovable ) ( 如何构建ai助手后端:逐步指南! https //blog back4app com/ai assistant backend/# text=you%20can%20now%20access%20the,cloud%20code%20functions%20like%20so )。例如,在云代码中: const openai api key = process env openai api key; // stored in back4app config const openai = require('openai'); // (after adding the openai npm package in package json) const openai = new openai(openai api key); parse cloud define("getspendingadvice", async (request) => { const user = request user; if (!user) throw "unauthorized"; // 1 fetch user’s transactions (e g , last 30 days) const txquery = new parse query("transaction"); txquery equalto("user", user); txquery greaterthan("date", / one month ago /); const txns = await txquery find(); const summary = summarizetransactions(txns); // e g , total spending, top categories // 2 call openai api with a prompt const prompt = `you are a financial assistant the user spent ${summary total} this month major categories ${summary topcategories} provide one personalized tip to save money next month `; const response = await openai complete({ prompt parameters }); return { advice response text }; }); 当可爱的前端聊天机器人屏幕需要新消息时,它会调用 getspendingadvice 云函数进行繁重的工作(获取数据,ai 调用)并返回建议文本以显示。这将您的 openai 密钥和逻辑保留在服务器上,维护安全性。 3 4 处理通知和警报 个人财务应用程序通常会发送警报(例如,“您超出了预算”或输入费用的提醒)。使用 back4app,您有几个选项: 推送通知: 如果您构建移动应用程序或pwa,back4app(parse)可以与apple/google推送服务集成。您需要安装parse push sdk,并使用云函数或云作业在满足条件时发送推送通知。 电子邮件/sms警报: 您可以使用云代码发送电子邮件。parse server允许通过配置电子邮件适配器使用mailgun、sendgrid等发送电子邮件。对于mvp,您可以跳过此步骤,但它是可用的。或者,在某些触发条件发生时(例如,超出预算),从云代码使用服务的api(twilio用于sms等)。 一个例子:如果您想在支出超过预算时发出警报,您可以添加一个云函数 checkbudgetstatus 来计算支出(如在 getdashboarddata ) 中,如果超出预算,则使用电子邮件api向用户的电子邮件发送警告。这可以定期调用(或在每次新交易后触发)。 3 5 安全最佳实践 处理财务数据时,安全至关重要: 数据访问控制: 我们设置了 clps/acls 验证每个数据库写入都设置了 acl,以便只有所有者(和管理员)可以读取它 ( back4app 上的 parse 平台初学者指南 — sitepoint https //www sitepoint com/parse platform back4app beginner guide/# text=%2a%20class,for%20anonymous%20users%20using%20sessions ) 在客户端,永远不要假设用户无法篡改数据;服务器应该强制检查(例如在云函数中,始终使用 request user 来过滤数据,而不是客户端提供的 userid)。 不要暴露秘密: 所有 api 密钥(back4app 主密钥、openai 密钥、stripe 秘密密钥等)必须保留在后端。 绝不要将它们放在前端代码或 lovable 提示中 如果需要,lovable 有一个“添加 api 密钥”功能用于安全存储密钥( stripe 和支付 lovable 文档 https //docs lovable dev/tips tricks/setting up payments# text=%2a%20use%20stripe%e2%80%99s%20no,paste%20the%20link%20into%20lovable ),而 back4app 使用环境变量来处理此事( 如何构建 ai 助手后端:逐步指南! https //blog back4app com/ai assistant backend/# text=you%20can%20now%20access%20the,cloud%20code%20functions%20like%20so ) 在云代码中,通过 process env 访问它们(如上所示)( 如何构建 ai 助手后端:逐步指南! https //blog back4app com/ai assistant backend/# text=you%20can%20now%20access%20the,cloud%20code%20functions%20like%20so ) 这样,即使您的前端被检查,敏感密钥也不会被暴露。 验证输入: 尽管 lovable 可能会生成带有某些验证的表单,但始终在服务器上进行验证。例如,确保费用金额为非负数,或文本字段不超过过长,以防止滥用或注入攻击。parse 云函数可以使用参数验证( request params 在云函数中可以检查预期格式)。 使用 https 和最新 sdk: back4app 端点默认使用 https。确保您的自定义域(如果使用)也已安全。使用最新的 parse sdk,其中包含安全补丁。此外,保持您的云代码依赖项更新(例如,stripe 或 openai 库)。 通过实施这些实践来构建后端,您为以下内容奠定了坚实的基础:一个 可扩展的数据库 , 安全的用户认证,财务计算的服务器端逻辑,以及用于人工智能和支付的集成点。接下来,我们将通过集成 stripe 进行订阅 来实现该平台的货币化。 4\ 货币化策略:集成 stripe 进行高级订阅 为了将您的财务助手转变为一个可行的 b2c 业务,您可能会提供一种免费增值模式:基本功能免费,高级功能(如详细的人工智能分析或无限账户)作为 高级 我们将使用 stripe 进行支付处理,因为它轻松支持订阅计费。back4app 和 lovable 都与 stripe 集成良好 – lovable 甚至支持开箱即用的 stripe 支付链接以便快速设置 ( stripe 和支付 lovable 文档 https //docs lovable dev/tips tricks/setting up payments# text=key%20takeaways ) 我们将涵盖使用 back4app cloud code 和 stripe 的 api 进行稳健解决方案的逐步集成,并提及更简单的替代方案。 4 1 stripe 设置和产品创建 创建一个stripe账户: 如果你还没有,请在stripe注册。在仪表板中,获取你的 api密钥 (你需要在服务器调用中使用secret key,在任何客户端使用中使用publishable key)( stripe back4app后端 https //www back4app com/docs/cloud code functions/integrations/stripe# text=3 1%20,key )。切勿公开secret key。 定义你的高级产品: 在stripe中,为你的订阅设置一个 产品 (例如,“finassist premium”)和一个 定价计划 (例如,每月5美元)。你可以在stripe仪表板的产品下进行此操作。这将为你提供一个价格id(或计划id),你将在创建订阅或结账会话时使用。 4 2 通过云函数进行back4app集成 我们将使用back4app云代码集成stripe,以便订阅购买和验证在服务器端安全进行( stripe back4app后端 https //www back4app com/docs/cloud code functions/integrations/stripe# text=in%20this%20guide%2c%20we%20are,integration%20using%20a%20web%20example )。一般流程: 客户创建: 当用户选择高级时,为他们创建一个stripe客户(如果尚未创建)。我们可以在注册时或第一次升级尝试时自动完成此操作。 结账会话(订阅): 使用stripe的结账或订阅api向用户收费。 webhook或确认: 在付款后,确认订阅并在我们的数据库中将用户标记为高级。 让我们实现这些: 在 cloud code 中安装 stripe sdk: 在 back4app 的 cloud code 文件夹中,包含 stripe 在 package json 依赖项中(例如, "stripe" "^12 0 0" )。然后,在 main js 中初始化它: const stripe = require('stripe')(process env stripe secret key); 在 back4app 配置中存储 stripe secret key (在 服务器设置 > 环境变量 ) stripe客户和订阅功能: 添加云函数以处理升级: parse cloud define("createstripecheckout", async (request) => { const user = request user; if (!user) throw "not logged in"; const email = user get("email"); // 1 create stripe customer if not exists let customerid = user get("customerid"); if (!customerid) { const customer = await stripe customers create({ email }); customerid = customer id; user set("customerid", customerid); await user save(null, { usemasterkey true }); // save customerid in user } // 2 create checkout session for subscription const session = await stripe checkout sessions create({ customer customerid, success url "https //\<your app>/premium success", // redirect url after success cancel url "https //\<your app>/upgrade", // if they cancel payment method types \["card"], mode "subscription", line items \[{ price "\<your stripe price id>", quantity 1 }] }); return { sessionid session id }; }); 这个云函数做两件事:确保用户有一个stripe客户记录,并为订阅创建一个结账会话。该会话提供一个url,用户将被重定向到该url进行支付。(我们在这里使用结账以简化操作;它处理所有支付用户界面)。 高级标志: 我们添加了一个 customerid 字段到 user 以便进行stripe集成(您可以通过back4app仪表板添加它或使用 user set 如上所示) ( stripe back4app后端 https //www back4app com/docs/cloud code functions/integrations/stripe# text=we%20will%20also%20add%20two,user%20to%20its%20stripe%20counterpart ) 还要添加一个布尔字段 ispremium (默认值为false)。一旦订阅激活,我们将设置 ispremium=true 。 重定向到 stripe 结账: 在您的 lovable 前端,当用户点击“升级到高级”时,调用 createstripecheckout 云函数(例如,通过 rest post /functions/createstripecheckout 以及会话令牌)。它返回一个 sessionid 。在前端使用 stripe js 进行重定向: 可爱的无代码前端可能不会自动包含 stripe js,但您可以在 html/js 组件中或作为 onclick 处理程序的一部分使用编辑器(或在导出代码后)注入此脚本。 处理支付后: 用户支付后,stripe checkout 将会将他们重定向到我们提供的 success url (您可以在 lovable 中制作一个简单的“感谢您”页面,地址为 /premium success )。然而,此时支付已经完成,但我们的后端尚未被通知更新 ispremium 。处理此问题有两种方法: 为了简单起见,我们将采用方法(a): parse cloud define("verifysubscription", async (request) => { const user = request user; if (!user) throw "not logged in"; const customerid = user get("customerid"); if (!customerid) return { ispremium false }; // get all subscriptions for the customer from stripe const subs = await stripe subscriptions list({ customer customerid, status "active" }); const hasactive = subs data && subs data length > 0; if (hasactive) { user set("ispremium", true); await user save(null, { usemasterkey true }); } return { ispremium hasactive }; }); 您的成功页面可以调用 verifysubscription 如果它返回 ispremium\ true , 您就知道用户现在已升级(并且后端已将他们标记为如此)。在下次登录或下次使用应用时,前端也可以检查 user 对象的 ispremium 字段(通过 parse sdk 或 /users/me get)来限制功能。 4 3 限制高级功能 在支付流程到位的情况下,在前端和后端实施访问控制 前端 ui/ux 如果 user ispremium 为假,您可以禁用或隐藏高级功能。例如,如果“ai详细分析”是仅限高级用户的功能,则该按钮或菜单项应不显示或提示“升级以访问此功能。” 升级后,取消隐藏这些功能。由于前端可以在登录后获取用户的 ispremium 状态(存储或通过 api 调用获取),请使用条件渲染(lovable 可能允许在其逻辑中添加条件,或者您在导出后在代码中处理它)。 后端强制执行 永远不要仅依赖前端 – 也要在后端强制执行。例如,如果有一个云函数 getdetailedreport 是高级的,请在顶部检查 request user get("ispremium") ,如果不是高级用户则抛出错误或拒绝访问。类似地,如果您有单独的类用于高级数据,请使用 clp 或角色 您可以在 parse 中创建一个 角色 “高级”,并将付费用户分配到该角色。然后某些类权限或功能访问可以限制为该角色。parse clp 支持基于角色的访问 ( back4app 上的 parse 平台初学者指南 — sitepoint https //www sitepoint com/parse platform back4app beginner guide/# text=controls,of%20access%20controls )。这更高级,但在扩展时,这是管理权限的干净方式。 测试 模拟两种场景 – 免费用户和高级用户。确保免费用户进行高级操作时被友好地拒绝(例如,前端显示升级提示而不是调用 api,或者如果调用了 api,则处理错误)。确保高级用户没有阻碍。 4 4 替代的快速货币化与支付链接 (可选提及) 如果上述内容对mvp来说感觉复杂,请注意, stripe支付链接 提供了一个更快的无代码解决方案。您可以在stripe中为您的订阅产品创建一个支付链接,并简单地将该链接嵌入到您的应用中(例如,“升级”按钮打开由stripe托管的stripe结账页面)。lovable的文档甚至建议这样做以实现快速结账流程( stripe与支付 lovable文档 https //docs lovable dev/tips tricks/setting up payments# text=there%20are%20many%20ways%20to,secure%20and%20efficient%20payment%20processing )( stripe与支付 lovable文档 https //docs lovable dev/tips tricks/setting up payments# text=key%20takeaways )。限制在于,您必须手动对账哪些用户已付款(例如,通过csv或stripe仪表板),除非您仍然实现一个webhook。对于试点或原型,支付链接是可以的:用户点击链接,在stripe的网站上付款,然后您通过设置字段在back4app上手动升级他们。但对于可扩展的解决方案,我们详细介绍的集成方法在用户体验上要顺畅得多(自动升级账户)。 4 5 订阅后的考虑事项: 收据和发票: stripe 可以处理电子邮件收据。您还可以集成 stripe 客户门户以管理订阅(让用户自行取消或更新卡片)。 试用期: 您可以通过创建带有 trial days 的 stripe 订阅或仅在一段时间后设置 ispremium 来提供试用。这可以通过 stripe 的设置进行管理,但请确保在您的应用逻辑中反映出来(例如,显示“试用”状态)。 扩展支付: stripe 本身扩展良好。随着用户的增加,监控 webhook 事件,并确保您的 stripe 云函数经过优化(不要获取不必要的数据)。我们将在下一部分讨论更多扩展内容。 在这个阶段,您有了一种通过订阅来 货币化您的应用 的方式 – 用户可以升级以解锁高级功能,而您的后端知道谁是高级用户。现在让我们讨论如何 扩展 这个平台以支持更多用户,并在长期内保持其性能和安全性。 5\ 扩展和安全考虑 建立一个成功的b2c平台意味着要为增长做好规划。 lovable ai 和 back4app 都非常适合扩展:lovable生成生产级前端,而back4app(parse)是一个托管服务,可以自动处理许多扩展(数据库集群、自动扩展基础设施)为您( back4app上的parse平台初学者指南 — sitepoint https //www sitepoint com/parse platform back4app beginner guide/# text=key%20takeaways )。然而,您应该遵循应用设计中的最佳实践,以确保它能够高效地处理不断增加的负载。 5 1 高效的数据结构设计 模型设计: 随着用户数量的增长,重新审视您的数据架构。我们创建的类(用户、交易、预算)应该足够,但要考虑到数量:单个用户可能会记录数千个交易。parse数据库(由mongodb或postgresql在back4app上支持( back4app上的parse平台初学者指南 — sitepoint https //www sitepoint com/parse platform back4app beginner guide/# text=enabling%20developers%20to%20launch%20back,as%20database%20management%2c%20authentication%2c%20live )可以处理大量集合,但您可能希望在经常查询的字段上添加索引。默认情况下,parse会对objectid和指针进行索引;对于其他字段,如 日期 或 类别 ,如果需要,请考虑创建数据库索引(back4app允许通过模式编辑器或以编程方式添加索引)。 关注点分离: 如果您的应用扩展(例如,添加投资或其他数据),请创建单独的类,而不是用多种类型的数据过载一个集合。这使得每个查询保持专注和精简。 5 2 查询性能优化 低效的查询会随着数据的增长而减慢您的应用。遵循这些parse查询最佳实践: 使用索引查询: “parse使用索引,因此您的查询可以查看数据的子集,而不是完全扫描。” ( parse server:最佳实践指南 https //blog back4app com/parse server best practices/# text= ) 优先使用在索引字段上使用相等或范围条件的查询。例如, query equalto("user", currentuser) 或日期范围使用索引,而查询 != 或复杂的正则表达式将不会使用索引,应避免使用 ( parse server:最佳实践指南 https //blog back4app com/parse server best practices/# text=queries%20that%20use%20indexing%20very,comparative%20queries%2c%20like%20%e2%80%9cgreater%20than%e2%80%9d ) 不要使用 notequalto("category", "food") , 查询所有其他特定类别或重构逻辑。 编写限制性查询: 仅获取您需要的数据。parse允许您选择特定字段并设置限制。默认情况下,查询返回最多100个结果 ( parse server:最佳实践指南 https //blog back4app com/parse server best practices/# text=a%20query%20limit%20is%20100,the%20number%20of%20results%20returned )。使用分页 ( skip / limit ) 来滚动交易列表,而不是一次拉取成千上万的数据。例如,要显示交易历史,每次检索50个(使用 limit 50 ) 并在ui中实现“加载更多”。 避免在客户端进行大规模连接: 如果您需要组合数据(例如,用户 + 交易 + 预算),在云代码(服务器)中进行组合并发送一个合并结果可能更有效,而不是让客户端进行多次请求和连接。我们在 getdashboarddata 云函数中使用了这种方法。 5 3 缓存策略 客户端缓存: parse sdk 支持在本地缓存查询结果 ( parse server:最佳实践指南 https //blog back4app com/parse server best practices/# text=caching%20queries%20will%20increase%20your,requests%20have%20not%20yet%20completed )。例如,在移动设备上,您可以使用 query cachepolicy = cachepolicy cache then network 快速显示缓存数据,同时获取更新 ( parse server:最佳实践指南 https //blog back4app com/parse server best practices/# text=caching%20queries%20will%20increase%20your,requests%20have%20not%20yet%20completed )。在网页上下文中,您可以将一些数据缓存到内存或 localstorage 中(例如,最后已知的余额),以使应用程序感觉更快。始终在后台刷新以确保准确性。 服务器端缓存: back4app 不提供现成的内存缓存用于查询结果,但如果需要,您可以在云函数中实现简单的缓存。例如,如果生成一个重的 ai 报告需要时间,您可以将结果存储在一个新类中(甚至是带有时间戳的 cachedreport 对象),这样在接下来的请求中,比如说 10 分钟内,可以返回缓存结果,而不是重新计算。如果很多用户频繁请求 ai 进行分析,这尤其有用——缓存他们的最后分析以减少 api 调用(和成本)。 静态资产的 cdn: back4app 自动通过 cdn 提供文件。如果您的应用程序有图像或下载(如 pdf 报告功能),请使用 parse 文件存储来存储它们,该存储使用 cdn 进行全球快速交付 ( parse 自托管与 back4app https //blog back4app com/parse self hosted/# text=parse%20self%20hosted%20vs%20back4app,cache )。 5 4 背景作业和自动化 随着用户基础的增长,您将希望自动化维护和繁重的任务: 定时任务 (cron) parse 允许调度云代码任务在特定时间间隔运行 ( 如何创建您的 parse cron 任务 back4app 后端 https //www back4app com/docs/platform/parse cron job# text=introduction ) ( 如何创建您的 parse cron 任务 back4app 后端 https //www back4app com/docs/platform/parse cron job# text=1,created%20in%20a%20cloud code%20directory ) 例如,您可以创建一个夜间运行的任务,为每个用户生成“月末总结”,或清除任何过时的数据。在 back4app 的仪表板中,在服务器设置下,您可以调度这些任务每天/每周运行 ( 什么是 parse 服务器? | back4app https //www back4app com/product/what is parse server# text=what%20is%20parse%20server%20%3f,long%20running%20computation%20at%20any ) ( 如何为 typescript 构建后端? 教程 back4app https //www back4app com/tutorials/how to build a backend for typescript# text=back4app%20www,at%20whatever%20interval%20suits ) 使用 parse cloud job("jobname", (request) => { }) 在云代码中 ( 如何创建您的 parse cron 任务 back4app 后端 https //www back4app com/docs/platform/parse cron job# text=2,some%20time%20and%20destroy%20them ) 用于 发送每月总结电子邮件。 计算年度报告并保存以便快速访问。 删除或归档旧数据(清理)。 任何不需要用户等待的定期任务。 webhooks 和外部集成 随着您的扩展,您可能会集成更多服务(可能通过 api 拉取银行交易数据等)。设计您的后端以处理外部 webhook 或 cron 获取 根据需要使用云函数或任务。例如,如果链接一个发送交易的银行 api,请使用 webhook 接收器(可以通过云代码中的自定义 express 路由或一个外部小服务器完成,然后通过 rest 写入 parse)。 5 5 监控和日志记录 日志记录 使用 console log() 在 cloud code 中广泛使用,尤其是在关键操作周围(但在生产环境中避免记录敏感信息)。back4app 提供日志,您可以查看错误或性能问题。这将有助于识别慢查询或失败的 stripe 付款等问题。 分析 跟踪使用指标 – 例如,每个用户的交易数量,进行的 ai 查询数量 – 这样您就知道哪些功能被大量使用(如果使用付费 ai api,可能需要优化或成本管理)。 扩展后端 back4app 的自动扩展将处理典型的 web 规模应用,但如果您的应用确实起飞,请考虑以下几点 数据库优化 如果使用 mongodb,特别大的集合可能需要分片 – back4app 可以通过他们的付费计划处理,但如果达到数百万条记录,您应该与他们讨论。 读/写分离 parse 不能直接在应用级别做到这一点,但您可以设计您的使用方式,使得重读(如分析)在副本上或通过导出数据到数据仓库进行,从而使主数据库专注于事务查询。 速率限制 设置适当的限制以防止滥用(back4app 可能每秒有默认的速率限制;确保您的前端不会无意中对 api 进行过多请求)。 并发云代码 如果您运行重的云函数,请注意它们在有限的资源上执行。对于非常重的计算,您可能会将其卸载到 aws lambda 或单独的服务,并从云代码中调用它。或者,将任务分解为更小的块或使用可以顺序运行的后台作业。 5 6 持续的安全警惕 随着您的成长,安全需求也在增加 使用角色进行管理: 如果您需要访问用户数据或进行审核,请创建一个“管理员”角色。然后给予该角色更高的权限。例如,管理员可以拥有读取/写入所有交易的权限以便于支持。普通用户则没有。这样,您就不必随意使用主密钥。 定期审计: 定期检查您的 clp 和 acl 设置 ( back4app 上的 parse 平台初学者指南 — sitepoint https //www sitepoint com/parse platform back4app beginner guide/# text=controls,of%20access%20controls )。在开发过程中,容易为了测试而打开某些内容,然后忘记锁定。使用 back4app 的安全仪表板工具检查不应公开的类。 密钥轮换: 如果需要,更新您的 api 密钥并将其保存在配置中。如果密钥可能已泄露(例如,您不小心记录了它),请重新生成它。stripe 和 openai 允许滚动密钥。 合规性: 如果您处理大量财务数据,请考虑合规标准。例如,不要在您的服务器上存储任何敏感的银行账户或卡信息(将其留给 stripe)。遵守用户数据的隐私法律(应用户请求提供数据删除等,这在像 back4app 这样的一体化平台上更容易)。 最后, 尽可能进行大规模测试 。使用脚本或测试服务模拟许多用户同时使用您的应用程序。观察系统的表现——也许在 100 笔交易时, getdashboarddata 函数的响应时间很好,但在 10,000 笔时变慢(那么您可能会考虑在预算类中预聚合每月总数,以避免每次都进行求和)。主动识别这些问题将为您节省后续的麻烦。 结论: 您现在已经规划、构建并准备好扩展一个全栈 ai 驱动的个人财务助手! 🎉 从 llm 辅助的设计阶段开始,确保您考虑了所有方面(您始终可以与 llm 反复讨论改进的想法)。 lovable ai 前端在极短的时间内为您提供了一个功能齐全、精致的用户界面,远比手动编码要快( lovable https //lovable dev/# text= )】, 并且它连接到一个强大的 back4app 后端 ,安全地处理数据、身份验证,并与 ai 和支付集成。您已经实施了 stripe 进行货币化,遵循最佳实践,以便只有付费用户才能解锁高级价值。通过缓存、高效查询和后台作业,应用程序的架构能够应对增长。 现在由你来启动和迭代。监控用户反馈,利用你的人工智能规划技术来头脑风暴新功能(也许是一个建议预算调整的人工智能,或者与银行账户的集成),并不断完善体验。通过将无代码/低代码工具与您自己的自定义逻辑相结合,您可以 快速行动 但仍然保持对产品质量和可扩展性的控制。祝你构建财务助手好运——一切基础都已为你创建一个 可爱的 和 可扩展的 财务伴侣为你的用户!🚀 来源: back4app (parse) 文档关于数据建模、安全性和 stripe 集成 ( back4app 上 parse 平台的初学者指南 — sitepoint https //www sitepoint com/parse platform back4app beginner guide/# text=authorization%20determines%20if%20an%20authenticated,two%20levels%20of%20access%20controls ) ( back4app 上 parse 平台的初学者指南 — sitepoint https //www sitepoint com/parse platform back4app beginner guide/# text=parse%20uses%20access%20control%20lists,will%20always%20override%20acl%20permissions ) ( stripe back4app 后端 https //www back4app com/docs/cloud code functions/integrations/stripe# text=we%20will%20also%20add%20two,user%20to%20its%20stripe%20counterpart ) ( stripe back4app 后端 https //www back4app com/docs/cloud code functions/integrations/stripe# text=in%20this%20guide%2c%20we%20are,integration%20using%20a%20web%20example )7】 可爱的ai官方网站和从自然语言提示构建web应用程序的指南 ( 可爱的 https //lovable dev/# text= ) ( 可爱的ai:终极初学者指南 https //codeparrot ai/blogs/lovable ai the ultimate beginner guide# text=lovable%20ai%20is%20an%20innovative,pleasing%20designs%20and%20robust%20functionality )7】 可爱的文档 – stripe 集成提示(支付链接与高级设置( stripe 和支付 可爱的文档 https //docs lovable dev/tips tricks/setting up payments# text=there%20are%20many%20ways%20to,secure%20and%20efficient%20payment%20processing ) ( stripe 和支付 可爱的文档 https //docs lovable dev/tips tricks/setting up payments# text=key%20takeaways )0】 back4app 博客 – 使用 openai 与 back4app(云代码环境和安全密钥存储)( 如何构建 ai 助手后端:逐步指南! https //blog back4app com/ai assistant backend/# text=at%20this%20stage%20of%20the,the%20required%20cloud%20code%20functions ) ( 如何构建 ai 助手后端:逐步指南! https //blog back4app com/ai assistant backend/# text=you%20can%20now%20access%20the,cloud%20code%20functions%20like%20so )3】 解析最佳实践 关于查询优化和缓存的指导 ( 解析服务器:最佳实践指南 https //blog back4app com/parse server best practices/# text= ) ( 解析服务器:最佳实践指南 https //blog back4app com/parse server best practices/# text=caching%20queries%20will%20increase%20your,requests%20have%20not%20yet%20completed )9】 back4app 定时任务 如何安排维护和自动报告的后台任务 ( 如何创建您的 parse 定时任务 back4app 后端 https //www back4app com/docs/platform/parse cron job# text=1,created%20in%20a%20cloud code%20directory )7】 对llm规划的洞察——像gpt 4这样的先进模型如何有效地分解项目需求 ( 利用llm管理我的项目(第一部分) medium https //medium com/@docherty/can llms help me manage my projects part 1 ee4342b1ca0a# text=llms%20can%20effectively%20generate%20detailed,the%20project%20down%20into%20tasks )2】