|
|
@@ -0,0 +1,45 @@
|
|
|
+# 调用云函数接口
|
|
|
+
|
|
|
+```javascript
|
|
|
+const response = await fetch('http://your-server.com/api/functions', {
|
|
|
+ method: 'POST',
|
|
|
+ headers: { 'Content-Type': 'application/json' },
|
|
|
+ body: JSON.stringify({
|
|
|
+ id: '45sadosownxxx',
|
|
|
+ data: {...},
|
|
|
+ })
|
|
|
+});
|
|
|
+```
|
|
|
+
|
|
|
+# 云函数代码示例
|
|
|
+``` js
|
|
|
+async function handler(request, response) {
|
|
|
+ try {
|
|
|
+ const { body } = request;
|
|
|
+ const { user, context } = body;
|
|
|
+ // 1. 修复版本号错误:0.0.9 是合法数值,无需引号(原代码语法无错,但建议显式为字符串更通用)
|
|
|
+ let productObj = new Parse.Object('Department');
|
|
|
+ productObj.set('name', 'test_hb'); // 推荐用字符串存储版本号,避免数值解析问题
|
|
|
+ productObj.set('leaderId', '1234567');
|
|
|
+ productObj.set('description', '123@qq.com'); // 日志数据初始化为空对象
|
|
|
+ productObj.set('user', user.id);
|
|
|
+ // 2. 保存数据到 Parse 数据库(使用主密钥确保权限)
|
|
|
+ await productObj.save(null, { useMasterKey: true });
|
|
|
+
|
|
|
+ // 3. 返回成功响应
|
|
|
+ response.status(200).json({
|
|
|
+ success: true,
|
|
|
+ logId: productObj.id, // 补充返回日志ID,便于后续查询
|
|
|
+ message: '日志保存成功'
|
|
|
+ });
|
|
|
+ } catch (error) {
|
|
|
+ // 4. 新增错误捕获:处理保存失败的情况(如权限不足、表不存在等)
|
|
|
+ console.error('FunctionaLog 保存失败:', error);
|
|
|
+ response.status(500).json({
|
|
|
+ success: false,
|
|
|
+ message: '日志保存失败',
|
|
|
+ error: error.message // 返回错误信息便于调试
|
|
|
+ });
|
|
|
+ }
|
|
|
+}
|
|
|
+```
|