Я занимаюсь поиском песен в качестве проекта, и все работает нормально, кроме случаев, когда я запускаю программу с 2 разных компьютеров, данные, отправленные на каждый компьютер, смешиваются с данными, отправленными на другой компьютер
Я пытался разделить пользователей с помощью переменных в сеансах, но эта переменная намного больше, чем максимальное значение, которое может содержать переменная сеанса.
Я также попытался создать другой URL-адрес на основе запроса, но по какой-то причине он отправляет ошибку 404.
Это соответствующий код Python
@app.route("/", methods=['GET','POST'])
def index():
global str_request
global search_done
global songs
global already_requested
already_requested=False
api_connection=connected_to_internet()
print(api_connection)
if api_connection:
if request.method == 'POST':
search_request = request.form.getlist('search[]')
str_request=turn_list_to_str(search_request)
str_request=str_request.replace(' ','%20')
print ("/result/"+str_request)
search_request=arrange_request(search_request)
print(search_request)
songs=[]
data=search_api(search_request)
search_done=False
if data!=None:
for hit in data:
songs.append(Song(hit['result']['full_title'],hit['result']['primary_artist']['name'],hit['result']['url'],hit['result']['song_art_image_thumbnail_url']))
return render_template('layout.html')
else:
return render_template('connection.html')
@app.route("/result/"+str_request)
def result():
global songs
return render_template("result.html",songs=songs)
это соответствующий код js
$(document).ready(function(){
$("#search_button").click(function(){
btn=document.getElementById("search_button");
btn.disabled=true;
var $loader = $("<div />");
$loader.addClass('loader');
$loader.appendTo("body");
var search_result=arrangeTag();
//post https://lyritag.xyz/
$.post("http://localhost/",
{
"search":search_result
},function(){
//var user_request = '<%=Session["user_request"]%>';
//alert(user_request);
for(var i = 0; i < search_result.length; i++){
console.log(search_result[i])
}
location.replace("/result/"+search_result);
})
});
});
И URL, и app.route результата совпадают, но возвращает ошибку 404.
Также подойдет любое другое решение.