Skip to main content

Write a File (RAW)

  • Description

    POST /write_file HTTP/1.1

    {"filename":"file name","data":"base64-encoded content"}
  • Possible Responses

    {"code":0,"message":"Success"}
    {"code":4,"message":"Unable to write file"}
  • Desktop example (write content to a script file, Python 3.x):

    # -*- coding: utf-8 -*-
    import http.client
    import json
    import base64

    luaf = open('r:/123.lua', 'r', encoding='utf-8') # script file path, explicitly specify encoding
    luatext = luaf.read()

    conn = http.client.HTTPConnection("192.168.31.72:46952") # device address and port
    conn.request("POST", "/write_file", json.dumps({
    "filename": "lua/scripts/123.lua",
    "data": base64.b64encode(luatext.encode('utf-8')).decode('utf-8') # encode to bytes, base64 encode, then decode to str
    }).encode('utf-8')) # explicitly encode as UTF-8

    response = conn.getresponse()

    if response.status == 200:
    ret = json.loads(response.read().decode('utf-8')) # explicitly decode as UTF-8
    print(ret['message'])
    else:
    print(response.status, response.reason)
    print(response.read().decode('utf-8')) # explicitly decode as UTF-8

    conn.close()
  • Notes

    • The root directory for file operations via this API is /var/mobile/Media/1ferver/