扭曲:使用POST从服务器发送和接收JSON

问题描述

我正在尝试设置一个扭曲的服务器,该服务器可以接收参数,对其进行处理并发送回JSON文件

我的问题:

  • 如何使用请求设置POST参数? (或通过扭曲的客户端)
  • 如何接收和发送JSON文件

我所拥有的:

from twisted.web.server import Site
from twisted.web.resource import Resource
from twisted.internet import reactor
from twisted.web.static import File



class AlignPage(Resource):

def render_POST(self,request):
    audio = request.args["audio".encode('utf-8')]
    audio = audio[0]

    transcript = request.args["transcript".encode('utf-8')]
    transcript = transcript[0].decode('utf-8')

    Meta_data = request.args["Meta-data".encode('utf-8')]
    Meta_data = Meta_data[0].decode('utf-8')
    content = '<html><body>Meta-data: %s <br> <br> Audio: %s <br> <br> Transcript: %s <br></body></html>' % (
    Meta_data,"audio",transcript)
    return content.encode('utf-8')

root = Resource()
root.putChild(b'',File("index.html"))
factory = Site(root)
reactor.listenTCP(8880,factory)
reactor.run()

index.html:

    <html>
  <head>
    <Meta charset="utf-8" />
  </head>
  <body>
  <div id="field" style="text-align: center;">
    <div id="header">
      <h1 class="home">Auto Lip-Sync</h1>
    </div>
    <form action="/result" method="POST" enctype="multipart/form-data">
      Meta-data:<br>
      <input type=file name=Meta-data><br>
      Audio:<br>
      <input type=file name=audio><br>
      <br>
      Transcript:<br>
      <input type=file name=transcript><br>
      <input id="align-button" type=submit value=Align>
    </form>
  </div>
  <div style="text-align: center;">
    <!--Todo: Customise Footer-->
    <div id="footer">
      <a href="https://mecabricks.com/en/shop">Auto Lip-Sync</a>
    </div>
  </div>
  </body>
</html>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)