Подтвердить что ты не робот

Как протестировать Express/node REST API с помощью расширенного клиента REST или Postman?

Мне нужно протестировать мой сервер REST API, который принимает JSON с помощью Advanced REST Client или Postman для Chrome.

Но я сталкиваюсь с проблемами: я могу отправлять запрос только с помощью встроенной формы и использовать Content-Type: application/x-www-form-urlencoded

Но это не сработает, так как у меня есть встроенные документы, например, Мне нужно ПОЧТОВАТЬ этот:

{title:"Awesome post!", tags: ["blue", "jeans"] }

Это невозможно при использовании встроенных форм расширения Chrome.

Когда я выбираю Raw Body и вставляю туда контент, мой бэкэнд видит req.body как пустой объект. Когда я также устанавливаю заголовок "Content-Type: application/json", я получаю следующую ошибку в моем бэкэнд:

SyntaxError: Unexpected token n
at Object.parse (native)
at IncomingMessage.exports.parse.application/json (/Library/WebServer/Documents/slipfeed/node_modules/express/node_modules/connect/lib/middleware/bodyParser.js:135:16)
at IncomingMessage.EventEmitter.emit (events.js:85:17)
at IncomingMessage._emitEnd (http.js:366:10)
at HTTPParser.parserOnMessageComplete [as onMessageComplete] (http.js:149:23)
at Socket.socket.ondata (http.js:1682:22)
at TCP.onread (net.js:404:27)

Примечание. Я использую функции bodyParser() и methodOverride() в настройках моего приложения. Отключение их не помогло.

Какие настройки следует использовать, чтобы я мог просто ввести поле JSON в поле Raw body, и запрос будет работать?

Чтобы пояснить ответ: мне пришлось установить Content-Type: application/json (в заголовке запроса) и использовать правильно сформированный json, где имена свойств также находятся внутри двойных кавычек, чтобы заставить его работать.

4b9b3361

Ответ 1

Попробуйте включить свойства поля в кавычки: { "title": "Awesome post!", "tags": [ "blue", "jeans" ]}