0

我正在考虑使用 DreamFactory 作为 API。我对服务器逻辑很陌生。我想将图像存储在文件系统上,并将存储文件的路径存储到数据库中。我不会将图像作为 blob 存储在数据库中,因为它们后面还会有许多其他图像。有人可以指出我正确的方向吗?

首先使用以下命令将图像发布到文件系统:

post /files/{file_path} 

在那之后:

post /mysql/_table/{table_name} createRecords() - Create one or more records

但是如何将路径传递给数据库呢?

4

1 回答 1

1

一种方法是在到 /files/{file_path} 的 POST 上使用服务器端脚本(在本例中为 V8J)。转到管理应用程序,脚本选项卡,然后按照以下路径处理事件...

Process Event Scripts > files > files.{file_path} > [POST] files.{file_path} > files.{file_path}.post.post_process

试试下面的脚本...

// event.resource is the {file_path} part, 
// including any folders from root, i.e. my/path/file.txt
var_dump(event.resource); 

// Create a record that you want to post to a table, 
// using the "todo" table for example, setting "name" to the file path
// "mysql" is my db service name
var record = {"resource": [ {"name": event.resource, "complete": false } ] }; 
var result = platform.api.post('mysql/_table/todo', record);

var_dump(result); 
// result contains a resource array with the id of the record created
// like {"resource": [ {"id": 5} ] }
于 2016-02-16T20:20:34.943 回答