Выполните вызов API при загрузке страницы (Django)
Я пытаюсь найти способ сделать вызов API и получить результаты при загрузке страницы. Любые подсказки будут оценены по достоинству!
вы можете использовать библиотеку "requests" и сделать запрос на django view для этой страницы.
import requests
def my_view(request):
r = requests.get('https://api.github.com/user', auth=('user', 'pass'))
context = {
'data': r.json()
}
return render(request, 'my_html.html', context)
Вы можете просто использовать JavaScript fetch API, как показано ниже:
page.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>My Title</title>
</head>
<body>
<h1 id="msg"></h1>
<script>
var url = 'http://127.0.0.1:8080/message';
fetch(url).then(
response => response.json()
).then(function(data) {
document.getElementById("msg").textContent = data['message'];
});
</script>
</body>
</html>
views.html
from django.shortcuts import render
from django.http import JsonResponse
def index(request):
return render(request, "index.html")
def message(request):
return JsonResponse({"message": "Hello World!"})