まず、django、js、ajaxに関する多くの経験はありませんが、これは非常に簡単な例です。 ajax呼び出しには多くの時間がかかります。 私の現在のdevの構成は次のとおりです。Windows 7の、のpython 3.6、ジャンゴ1.10.5、ローカルホスト上で実行しているサーバー - 127.0.0.1:8000Djangoサーバーへの単純なAjax呼び出しの応答時間が遅い - 遅いTTFB
基本的に、私は(特定のボタングループで)ボタンをクリックして、これは、Ajaxを活性化し、応答に応じて、ボタンの色が更新されます。
Info:現実にはもう少し複雑なものを使用していますが、速度が遅かったので、それを単純化してどこがうまくいかないか見てみましたが、それでも理由を見つけることはできません。
コードAJAX:
$('body').on('click', '.some_module', function(){
var $something= $(this);
$.ajax({
url: 'some_function/',
type: 'GET',
data: {'some_name' : "just_example"},
dataType: 'json',
success: function(data){
...some_action_where_i_change_color_of_button...
...not important because even if it's empty, it's slow...
}
});
});
コードジャンゴ、views.py:
def change_module(request):
# ...for example using hardcoded return...
data = {
'success': True,
'curr': 'something',
'selected': [],
'previous': []
}
return HttpResponse(json.dumps(data), content_type='application/json')
# tried also JSONResponse, the same feedback
したがって、この例を使用することによって、私は1秒以上のアップデートを待ち、TTFBは、1秒の周りに常にあります。 TTFBはサーバー側に関連していますが、内部にはほとんどない文字列要素を持つハードコードされたjsonを送信しているので、どのように遅くなるかわかりません。
Chrome developer tools TTFB image
同様の問題を持っていた誰かが私と彼の解決策を共有する場合、私は幸いです。
JSON応答(データ)を使用した場合、同じ1秒TTFB? – Beomi
はい、同じです。サーバーがlocalhost(127.0.0.1:8000)で動作していることを言い忘れたかもしれません – DragutinB