flask-在我的代码中创建为 javascript 模块时从 fetch 获取数据响应
我已经尝试了几天,作为模块创建的函数可以返回数据。
我使用烧瓶,在一个页面中,我将模块加载到标题中。
<script src="{{url_for('static', filename = 'js/modules.js')}}"></script>
在我第一次尝试 modules.js 文件时,我有这个功能:
function send_to_backend_old(data){
let coucou = fetch('/toronto', {
method: 'post',
headers: {
'Accept': 'application/json, text/plain, */*',
'Content-Type': 'application/json'
},
body: JSON.stringify(data)
}).then(function(response) {
response.json().then(function(data_received) {
return data_received;
}).then((data_received)=>{
return data_received;
})
});
return coucou
在 javascript 部分的 html 页面中,当我调用该函数时,此数据未到达。
<button type="button" class="btn btn-primary btn-sm" onclick="pruebas_fetch_to_backend();">fetch módulo</button>
function pruebas_fetch_to_backend(){
let datos_json = {};
datos_json.url_api = '/toronto'
datos_json.test1 = 'valor1'
datos_json.test2 = 'valor2'
console.log("---------------------------------------------")
riri = send_to_backend(datos_json)
console.log("valor de riri: "+JSON.stringify(riri))
console.log("---------------------------------------------")
}
另一项测试如下:
async function send_to_backend(data) {
let apiResponse = await fetch("/toronto", {
method: 'post',
headers: {
'Accept': 'application/json, text/plain, */*',
'Content-Type': 'application/json'
},
body: JSON.stringify(data)
});
let response = apiResponse.json();
// Since we waited for our API to respond using await
// The response variable will return the response from the API
// And not a promise.
console.log(response);
return Promise.all(response);
}
当我从 html 页面中的 javascript 代码调用函数时,如何获得响应?