Как Django обрабатывает пост-запрос, отправленный из React? Я извлек данные из POST-запроса, но как показать их в веб-браузере?

Я абсолютно новичок в области frontend и backend. Я отправил запрос из React в Django используя "POST" и я извлек данные из запроса, я могу распечатать их в терминале, но как показать результат в веб-браузере из Django (т.е. 8000/result/), кажется, что нужно использовать метод "GET", но он не работает, потому что мои данные извлекаются из POST запроса. В общем, я ввел текст и отправил его на localhost:8000/result, поэтому я хочу показать результат на этом url или перенаправить на другой и отправить его обратно в React.

Я не знаю, как этого добиться, я использовал довольно тупой метод я сохраняю данные запроса в tempory json и читаю json в другой функции для рендеринга браузера через "GET". Я пытался сделать рендеринг или перенаправление на некоторые url страницы непосредственно после обработки "POST" запроса, но это, очевидно, не удается.

views.py

@api_view(["GET","POST"])
#class SubmitTextView(View):
def post(request):
    if request.method =="POST":
        #print(True)
        text = request.body
        #print(type(text))
        result = json.loads(text)["text"]
        json_data = json.dumps({"text":result})
        #return HttpResponse(json_data, content_type='application/json')
        #return JsonResponse({"text":result})
        #context = {'result':result,'headline':'Result Searched from Wikipedia'}
        #return render(request, 'my_template.html', context)

        
        with open("sample.json", "w") as outfile:
            outfile.write(json_data)
        
        return JsonResponse({"status":"success"})


def upload(request): 
    with open('sample.json', 'r') as openfile:
    # Reading from json file
        json_object = json.load(openfile)
    text = json_object["text"]
    #print(text)
    context = {'result':text,'headline':'Result Searched from Wikipedia'}
    return render(request, 'my_template.html', context)

url.py

from django.contrib import admin
from django.urls import path,include
from app.views import *
urlpatterns = [
    path('admin/', admin.site.urls),
    path('new/',post,name = 'new'),
    path('response/', upload, name='response'),
   
]

html

<h1>{{ headline }}</h1>
<div 
  style="border: 1px solid black; overflow: auto; max-height: 200px;">
  
  <p>{{result}}</p>
</div>

Пожалуйста, помогите мне с этим... Спасибо!!!

Вернуться на верх