Javascript,如何将Blockly生成的Python代码保存到.py文件中?

时间:2017-07-19 20:03:43

标签: javascript python blockly

我有一台带有网络服务器的linux机器,我使用谷歌BLockly来生成python代码。它正确生成它,我使用alert(代码)来显示代码。如何将其保存到位于同一Web服务器中的文件中?

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h2 name="ch1" id="ch1" class="aLink"> &#10148 Contact My SourceToPay Connect</h2>

1 个答案:

答案 0 :(得分:0)

我完全不理解上下文, 我认为你是在客户端生成代码,你想保存它。 如果要将其保存在客户端(来自浏览器的文件保存选项),请使用以下库

https://github.com/eligrey/FileSaver.js

如果要将其保存在服务器端,请将数据从javascript本身发布到服务器,并将内容写入服务器中的文件。

让我们使用jquery发布数据。假设您的代码存在于变量&#39;代码&#39;

    $.post("/savecode",
    {
      data: code
    },
    function(data,status){
        alert("Data: " + data + "\nStatus: " + status);
    });

这会将数据发布到uri&#39; savecode&#39;

我认为,你创建了一个带有一些javascript的静态html页面,并从apache或https服务器的/ var / ww / html /文件夹中提供它。这不会起作用,您需要从Web应用程序中提供它。我在这里选择python flask非常简单。

接收数据并存储在服务器中,假设您的静态页面是home.html并且位于模板文件夹中

from flask import Flask, render_template, request
from werkzeug import secure_filename
app = Flask(__name__)


# Sending the home page when browsing /home
@app.route('/home')
def home():
   return render_template('home.html')


# Saving the code posted by the javascript app
@app.route('/savecode', methods=['POST'])
def savecode():      
    f = request.files['file']
    f.save(secure_filename(f.filename))
    return 'file saved successfully'

if __name__ == '__main__':
   app.run()

了解更多信息,请查看flask docs:http://flask.pocoo.org/

您可以使用您熟悉的任何语言/框架创建服务器程序。