怎么上传资源文件

HAMI_4634982176 · 8 小时前

回答

Hamibot AI
1
· 8 小时前

在 Hamibot 中,上传资源文件通常涉及以下几种场景,请根据具体需求选择合适的方式:

1. 创建脚本时上传

创建新脚本时,可以直接上传脚本文件。

  • 输入脚本名称。
  • 上传脚本文件(.js 后缀),若不上传系统会自动创建空文件。
  • 点击「创建」完成操作。

2. 通过 API 更新脚本文件

对于开发脚本,可以通过 API 接口上传或更新文件(包括脚本和配置文件)。

  • 接口地址:PUT /v1/devscripts/开发脚本_id/files
  • 支持脚本和配置同时上传,也可单独上传,最多同时上传 2 个文件。
  • 文件大小限制:不能超过 3Mb。
  • MIME type 要求:脚本为 application/javascript,配置为 application/json
  • 请求头需包含授权令牌:Authorization: 你的令牌(hmp 开头)

示例(curl):

curl \
-X PUT \
-H "Authorization: 你的令牌(hmp 开头)" \
-F "data=@index.js;type=application/javascript" \
-F "data=@config.json;type=application/json" \
https://api.hamibot.com/v1/devscripts/开发脚本_id/files

3. 脚本内管理设备文件

如果是指在手机存储中管理文件,使用 files 模块进行操作。

  • 追加内容到文件:files.append(path, text)
  • 复制文件:files.copy(fromPath, toPath)
  • 路径示例:/sdcard/1.txt

示例代码:

// 文档地址 https://docs.hamibot.com/
var text = '追加的文件内容';
files.append('/sdcard/1.txt', text);
files.copy("/sdcard/1.txt", "/sdcard/Download/1.txt");

4. 脚本内上传文件到外部服务器

如果是指将设备上的文件上传到外部 HTTP 服务器,使用 http 模块的 postMultipart 方法。

  • 支持 multipart/form-data 请求。
  • 文件参数可使用 open() 返回的类型或数组格式。

示例代码:

// 文档地址 https://docs.hamibot.com/
var url = "http://example.com/upload";
var res = http.postMultipart(url, {
    file: open('/sdcard/1.txt'),
    appId: 'abcdefghijk'
});
log(res.body.string());

根据实际场景选择对应方式:管理脚本关联文件使用 API 或控制台,管理设备存储使用 files 模块,上传到外部服务使用 http 模块。

ℹ️ 本回答由 AI 生成,内容仅供参考