2017-08-02 5 views
0

私はdjangoプロジェクトに取り組んでいます。目的の1つは、別のpythonスクリプトがHTTPリクエスト(Requestsライブラリを使用)を行ってjsonデータを取得できるようにすることですが認証された後の。これは正常に動作しますが、問題は、request.getオブジェクトが使用するURLに直接アクセスすると、すべてのデータが表示されます(ユーザー認証が行われていない状態です)。これは、単にURLに行くだけでデータが簡単に表示されるため、認証処理が無意味になります。では、ウェブ側のデータを表示しないようにするにはどうしたらよいですか?GETリクエストでスクリプトにデータを引き込むことはできますか?GETリクエストを非表示にする方法

私は既に、プロジェクトのWebインターフェイス部分(データを表示している)の認証システムを持っています。私はそれを後ろに置こうとしましたが、成功しませんでした。

import json, requests, _mysql 
login_attempt = requests.post('http://127.0.0.1:8000/m_app/data_login/', 
{'username': 'test', 'password': 'password1234'}) 
if login_attempt.content.decode('UTF-8') == 'Successful': 
    print('Logged in.') 
else: 
    print('Not logged in.') 
cookies = dict(sessionid=login_attempt.cookies.get('sessionid')) 
data = requests.get('http://127.0.0.1:8000/m_app/load/data', #if I type this URL in, I see the data 
cookies=cookies) 
print(data.content) #prints desired data 
+0

これを参照してください:https://docs.djangoproject.com/en/1.11/topics/auth/default/#django.contrib.auth.decorators.login_required –

答えて

関連する問題