POSTMAN: метод Post с использованием raw body возвращает 500 - PullRequest
0 голосов
/ 09 октября 2019

Я попытался POST запрос в json в сыром теле почтальона, как показано ниже:

enter image description here

, и я получил 500 внутренних ошибок сервера и результаты HTML, какниже

enter image description here

В противном случае я могу выполнить POST с использованием данных формы и из сценария, запущенного из терминала, используя тот же формат JSON.

Я использую Django 1.5.12 для обслуживания API и python 2.7.

Кто-нибудь может помочь?

1 Ответ

0 голосов
/ 09 октября 2019

Когда вы отправляете данные формы, заголовок content-type будет

Content-Type: multipart/form-data

, и в вашем представлении Django вы сделаете что-то вроде ниже, чтобы прочитать опубликованные данные:

name = request.POST.get('name')

Однако, , когда вы публикуете данные, как вы это делали сейчас с почтальоном, заголовок будет:

Content-Type: application/json

, и чтобы получить эти данные json, вы можете сделать что-то вроде:

import json

mydata = json.loads(request.body)
name  = mydata.get('name')

Статус 500, должно быть, потому что вы, по вашему мнению, не обработали дело для запроса json.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...