作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一台带有 Web 服务器的 Linux 机器,我使用 google BLockly 生成 python 代码。它正确生成它,我使用alert(code)来显示代码。如何将其保存到位于同一网络服务器的文件中?
function showCode() {
// Generate Python code and display it.
var code = Blockly.Python.workspaceToCode(workspace);
alert(code);
}
最佳答案
我没有完全理解上下文,我认为您正在客户端生成代码并且想要保存它。如果您想将其保存在客户端(浏览器中的文件保存选项),请使用以下库
https://github.com/eligrey/FileSaver.js
如果您想将其保存在服务器端,请从 JavaScript 本身将数据发送到服务器,并将内容写入服务器中的文件中。
让我们使用jquery来发布数据。假设您的代码位于变量“code”中
$.post("/savecode",
{
data: code
},
function(data,status){
alert("Data: " + data + "\nStatus: " + status);
});
这会将数据发布到 uri 'savecode'
我认为,您创建了一个静态 html 页面,其中包含一些 javascript,并从 apache 或 https 服务器的/var/ww/html/文件夹提供该页面。这是行不通的,您需要通过网络应用程序提供服务。我在这里选择Python Flask,这非常简单。
接收数据并存储在服务器中,假设您的静态页面是 home.html 并且位于 templates 文件夹中
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 文档:http://flask.pocoo.org/
您可以使用您熟悉的任何语言/框架创建服务器程序。
关于Javascript,如何将Blockly生成的Python代码保存到.py文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45200030/
我是一名优秀的程序员,十分优秀!