Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将后端flask micro服务与前端flask代码连接?_Python_Html_Ajax_Flask - Fatal编程技术网

Python 如何将后端flask micro服务与前端flask代码连接?

Python 如何将后端flask micro服务与前端flask代码连接?,python,html,ajax,flask,Python,Html,Ajax,Flask,我正在处理别人的代码。我需要调试和解决这个问题。我对后端有很好的经验,但对前端一无所知。我相信他的代码是完整的堆栈代码,其中包括使用flask实现的前端和后端微服务。我需要把他的前端代码和后端代码连接起来。后端工作正常。我已经核实过了。然而,他不确定连接后端并在web浏览器中反映输出的代码中有什么错误。以下是他的密码: #后端烧瓶(工作完全正常)- 从烧瓶进口烧瓶 导入操作系统,系统 从drivers.snapshot.snapshot\u服务导入快照服务 从drivers.compariso

我正在处理别人的代码。我需要调试和解决这个问题。我对后端有很好的经验,但对前端一无所知。我相信他的代码是完整的堆栈代码,其中包括使用flask实现的前端和后端微服务。我需要把他的前端代码和后端代码连接起来。后端工作正常。我已经核实过了。然而,他不确定连接后端并在web浏览器中反映输出的代码中有什么错误。以下是他的密码:

#后端烧瓶(工作完全正常)-
从烧瓶进口烧瓶
导入操作系统,系统
从drivers.snapshot.snapshot\u服务导入快照服务
从drivers.comparison.comparison\u服务导入ComparisonService
导入json
os.environ['JSNAPY_HOME']=sys.path[0]
app=烧瓶(名称)
@请求后的应用程序
请求后的def(响应):
add('Access-Control-Allow-Origin','*'))
add('Access-Control-Allow-headers','Content-Type,Authorization')
add('Access-Control-Allow-Methods','GET,PUT,POST,DELETE,OPTIONS')
返回响应
@附件路线(“/”)
def hello():
返回“启动应用程序!”
@app.route(“/snapshot/”)
def快照(主机名):
返回SnapshotService()。快照(主机名)
#前端烧瓶
从烧瓶导入烧瓶,渲染模板,重定向
app=烧瓶(名称)
@请求后的应用程序
请求后的def(响应):
add('Access-Control-Allow-Origin','*'))
add('Access-Control-Allow-headers','Content-Type,Authorization')
add('Access-Control-Allow-Methods','GET,PUT,POST,DELETE,OPTIONS')
返回响应
@应用程序路径(“/”)
def index():
返回重定向(“/snapshot/”)
@app.route(“/snapshot/”)
def view_snap():
返回渲染模板('snap.html')
{%extends'base.html%}
{%block content%}
快照
断裂
{%endblock%}
{%block page_javascript%}
$(文档).ready(函数(){
$(“#提交_快照_按钮”)。单击(功能(e){
$('submit_snap_button').html('';
$('submit_snap_button').attr(“disabled”,true);
$('div_result').hide();
$.getJSON(“http://molab-backend:5000/snapshot/“+$('#hostname').val(),函数(数据){
$('div#u result_msg').html(data.message);
如果(data.success==0){
$(“#div_result”).addClass('alert-danger').removeClass('alert-success'))
}
否则{
$(“#div_result”).addClass('alert-success').removeClass('alert-danger'))
}
$('div_result').show();
$('submit_snap_button').attr(“disabled”,false);
$('sumit#snap_button').html('snap');
},函数(){
}“json”);
e、 预防默认值();
});
})

{%endblock%}
每当单击id为
的HTML元素“#提交_快照_按钮”
时,此jquery代码段会向“快照”路径发出请求:

$.getJSON("http://molab-backend:5000/snapshot/" + $('#hostname').val(), function(data) {
        $('#div_result_msg').html(data.message);
        if (data.success === 0) {
            $('#div_result').addClass('alert-danger').removeClass('alert-success')
        }
        else {
            $('#div_result').addClass('alert-success').removeClass('alert-danger')
        }

        $('#div_result').show();
        $('#submit_snap_button').attr("disabled", false);
        $('#submit_snap_button').html('<i class="fa fa-camera"></i> Snap');
}
@app.route('/snapshot/<hostname>')
def snapshot(hostname):
        return SnapshotService().snapshot(hostname)