xiaomingtt 发表于 2023-3-17 17:23

onlyoffice回调函数用Python怎么写?

ONLYOFFICE Api Documentation - Callback handler
官方给了几种DEMO,但没有Python的。
PHP的验证成功,但移植到Python不知怎么写,一直不成功。
求教!{:1_893:}

kiki1226 发表于 2023-3-17 17:23

只要您有一个Web服务器,可以使用Python编写回调函数。以下是一个简单的示例:


from flask import Flask, request

app = Flask(__name__)

@app.route('/callback', methods=['POST'])
def handle_callback():
    data = request.json
    # 在这里处理回调数据
    return 'OK'

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=80)

这是一个使用Flask框架编写的简单Web应用程序。当OnlyOffice发出回调请求时,它将发送POST请求到此URL(/callback)。在handle_callback()函数中,您可以访问POST数据并执行适当的操作。最后,返回“OK”表示已成功处理回调。
请注意,此代码仅为示例。具体取决于您的要求,可能需要进行更多的错误处理和数据验证。

surepj 发表于 2023-3-17 17:46

人工智能给的建议,看看行不行:
import urllib.request
import json

if (body_stream := urllib.request.urlopen("php://input").read()) == False:
    print("Bad Request")

data = json.loads(body_stream)

if data["status"] == 2:
    downloadUri = data["url"]

    if (new_data := urllib.request.urlopen(downloadUri).read()) == False:
      print("Bad Response")
    else:
      with open(path_for_save, 'wb') as f:
            f.write(new_data)
            f.close()

print('{"error":0}')

xiaomingtt 发表于 2023-3-20 08:58

kiki1226 发表于 2023-3-17 17:23
只要您有一个Web服务器,可以使用Python编写回调函数。以下是一个简单的示例:




要用return,上周五用print调了半天也不行。
页: [1]
查看完整版本: onlyoffice回调函数用Python怎么写?