从零做微信小程序(9):用云开发搭一个货源广场,发帖与盲报价

18次阅读
没有评论

货源广场看起来只是“发帖+报价”,真正做起来却同时涉及表单、内容安全和隐私边界。这篇保留最小闭环:需求能发布,供应方能报价,但报价不会在公开页面互相抄。

lifetruth.top

一、先定义广场解决什么问题

货源广场是信息撮合功能,人话说就是“让有需求的人发帖,让能供货的人来报价”。第一版只做发布需求、浏览帖子和提交报价,不同时加入支付、聊天和担保交易。

帖子可以先有待审核、进行中和已结束三个状态。结构化字段包括品类、数量、预算、地区和期望时间,正文只负责补充说明。

先把信息撮合跑通,再考虑交易闭环。

如果平台要承诺担保、代收款或售后,就不再只是信息广场,责任和资质要重新评估。

二、表单和正文安全

手机号、微信号和 QQ 不能直接进入公开正文,否则既泄露隐私,也绕过后续的联系方式解锁。前端可以即时提示,云函数必须做最终拦截。

const hit = /(1\d{10}|微信|wechat|qq|QQ|\d{5,12})/.test(text);
if (hit) return fail('请勿在正文填写联系方式');
return savePost(text);

正则只能拦住明显格式,用户还可能用空格、谐音、图片或拆分字符绕过。因此还需要云端内容安全、人工抽查和投诉下架。

规则也不能过严。型号、尺寸、订单号可能包含数字,不能为了拦联系方式而拒绝所有数字和英文。

三、云端校验不能省

云函数收到请求后,重新检查用户身份、字段长度、敏感内容、提交频率和帖子状态。数据库写入前统一清洗或转义文本,避免用户提交改变页面结构的代码。

前端校验只是体验,不能承担安全责任。普通用户、超频用户和篡改参数用户都要分别测试。

四、盲报价的权限设计

盲报价不是把列表设成 `display:none`,而是让云函数根本不向无权限用户返回数据。普通浏览者只能看公开帖子;报价人只能看自己的报价;发帖人才能看到该帖全部报价。

报价记录至少保存帖子 ID、报价人 ID、金额、交付说明、创建时间和状态。查询时按角色过滤,不能先把所有报价返回,再交给前端隐藏。

报价的可见范围,必须由云端决定。

如果业务需要公开比价,应当另做脱敏后的市场数据,不要直接复用私密报价表。

五、让三类人都知道下一步

发帖人提交后看到“等待报价”,供应方进入帖子看到“提交报价”,发帖人收到新报价后能进入报价列表比较。每个页面只放当前角色最需要的动作。

上线前用三个账号测试:一个发帖人、一个报价人、一个普通浏览者,逐项确认谁能看到什么。

写在最后

货源广场第一版不需要立刻变成完整电商。把表单说清楚,把联系方式拦住,把报价权限分开,就完成了一个能验证需求的闭环。

如果你接下来要做撮合功能,先画“角色—动作—可见字段”表,再写页面。权限先想清楚,后面的支付和解锁才不会返工。

你认为货源广场最应该先解决内容质量,还是报价真实性?


「小程序实战路线图」

执迷者X把信息撮合类小程序当作一套可运营系统:前端体验只是开始,内容安全、数据权限、业务规则和后续变现都要同时成立。

你现在在第 09 篇:货源广场与盲报价。云开发基础可先回看第 03 篇:云开发、数据库和订阅消息;报价与联系人权益如何控制,继续阅读第 10 篇:付费解锁联系方式,以及第 11 篇:数据库建模与权限。

如果你希望把供需发布、报价或预约撮合做成小程序,可通过 联系页 说明你的用户角色和交易规则。

正文完
 0
评论(没有评论)