8
我在djangorestframework中製作了幾個apis。 這個我可以用命令行中的curl來測試api的html格式。使用json將圖像上傳到imagefield並使用djangorestframework使用CURL進行測試
現在我有一個模型的api,一個字段的ImageField。
我找不出要使用哪個curl命令。 使用我之前JSON格式FOT後操作使用的語法,這將是:
curl -X POST -S -H 'Content-Type: application/json' -u "username:password" --data-binary '{"otherfields":"something", "photo":"/home/michel/test.jpg"}' 127.0.0.1:8000/api/v1/
但在這種情況下,照片不會被保存,空(照片是一個可選字段)
添加-T /home/michel/test.jpg
我收到一條錯誤消息,稱127.0.0.1:800/api/v1/test.jpg不存在爲url。
在djangorestframework的測試html表單中,一切正常。
使用-F
選項,它說我只能做一次1個請求...... 我也刪除從數據類型的數據的二進制
任何人可以幫助我如何使這個捲曲後與兩個圖像和json中的其他數據在1個命令中。
我在做什麼錯? '$ curl -X POST -S -H「Accept-Language:en-en」-H'Accept:application/json'\ -F「name = Avatar」\ -F「username = avatar」\ -F 「password = A1234567」\ -F「[email protected]」\ -F「token = 748e14e32ce165d06365d3c9a00cee3f」\ -F「avatar = @/home/moreno/Pictures/avatar004.jpg; type = image/jpg「127.0.0.1:8000/api/v1/users/register /'response 400'{」username「:[」此字段是必填項。「],」password「:[」此字段爲必填項。「],」名稱「:[」此字段爲必填項。「],」avatar「:[」沒有提交文件。「],」email「:[」該字段是必填項。「]} – Moreno 2016-03-09 15:47:58
它缺少一個reuired領域。你需要在用戶名之前使用-u,而不是-F(除非它也是api中的一個字段,比你需要同時使用) – 2016-03-21 09:28:14
@ michel-iamit謝謝。我決定將圖像作爲base64字段發送,例如:'curl -H「授權:JWT ey ... 5U」-d「name = User Name&username = user&email = [email protected]&password = A1234567」--data-urlencode' avatar ='「$(base64〜/ Pictures/avatar004.jpg)」''--data-urlencode'image ='「$(base64〜/ Pictures/avatar001.jpg)」''--data-urlencode'picture = ''$(base64〜/ Pictures/577383.jpg)「''http:// localhost:8000/api/v1 // register /' – Moreno 2016-03-24 19:23:28