2016-12-02 19 views
0

在服務器上,我有一個帶有數據庫的Django應用程序。 在客戶端,我正在編寫一個Python腳本,通過https將數據發送到服務器,並讓服務器將該數據插入數據庫。如何使用Web API將數據插入到django應用程序數據庫中

我該如何解決這個問題? 我在控制服務器和客戶端。 想要做到這一點的原因是有一個API將數據插入到數據庫中。

回答

1

您可以將數據從Python腳本發送到後端。當然,您需要有一個在Django中定義的API。但是,假設你已經擁有了它,你可以簡單地使用真棒requests庫,從腳本發送數據:

>>> r = requests.get('http://localhost:8000/v1/api/resource?param1=12&param2=blabla') 

或者使用POST:

>>> payload = {'key1': 'value1', 'key2': 'value2'} 

>>> r = requests.post('http://localhost:8000/v1/api/resource', data=payload) 

和後端將接收它(如果你是使用Django你需要在View中處理它,並且很可能使用ORM來存儲值)。如果有任何機會,您在視圖中沒有收到該值,則意味着urls.py文件中定義的API可能配置不正確。

+0

這不會允許未經授權的用戶插入數據並耗盡服務器上的所有存儲空間嗎? – Flux

+0

那麼,如果你打算把它放在互聯網上,它不是本地使用的東西,你將不得不建立一個Auth機制。對於這樣簡單的應用程序,您可以簡單地通過POST傳遞一個令牌,並由Django進行驗證。這種方式只允許該令牌被允許存儲該信息。 – javidgon

相關問題