寫入一個檔案(RAW)
流式寫入
-
介面描述
PUT /write_file?filename=[URL 編碼的檔名] HTTP/1.1
[檔案資料]- 直接接收檔案位元組流(非 base64 編碼),適用於大檔案上傳
- 若目標檔案已存在會被覆蓋
-
可能的返回
- 成功:HTTP 204,無回應體
- 失敗:
- HTTP 400 +
{"message":"invalid path"}(未提供 filename 或路徑非法) - HTTP 404 +
{"message":"invalid path"}(無法建立目標路徑) - HTTP 500 +
{"message":"…"}
- HTTP 400 +
-
通過介面流式寫入內容到裝置腳本檔案 Python 3.x 範例(需要 requests 模組):
# -*- coding: utf-8 -*-
import requests
with open("r:/123.lua", "rb") as f:
resp = requests.put("http://192.168.31.72:46952/write_file", params={"filename": "lua/scripts/123.lua"}, data=f, timeout=30)
print(resp.status_code, resp.reason) # 成功時 204 No Content
if resp.status_code != 204:
print(resp.text)
Base64 寫入
-
介面描述
POST /write_file HTTP/1.1
{"filename":"檔名","data":"內容的 base64 編碼字串"} -
可能的返回
{"code":0,"message":"操作成功"}{"code":4,"message":"无法写入文件"} -
通過介面寫入內容到裝置腳本檔案 Python 3.x 範例(需要 requests 模組):
# -*- coding: utf-8 -*-
import base64
import requests
with open('r:/123.lua', 'rb') as f: # 腳本文件路徑,直接讀取字節
resp = requests.post(
"http://192.168.31.72:46952/write_file",
json={
"filename": "lua/scripts/123.lua",
"data": base64.b64encode(f.read()).decode('utf-8') # 直接對字節做 base64 編碼
},
timeout=30,
)
print(resp.status_code, resp.reason) # 成功時 200 OK
print(resp.text)
說明
- 該介面檔案操作的根目錄為
/var/mobile/Media/1ferver/ - 流式寫入 介面
2025-07-11以後的版本可用