Advanced RESTクライアントまたはPostman for ChromeでJSONを受け入れるREST APIバックエンドをテストする必要があります。
しかし、私は問題に遭遇しています:組み込みフォームとContent-Typeを使用してのみリクエストを送信できます:application/x-www-form-urlencoded
ただし、ドキュメントを埋め込んでいるため、これは機能しません。たとえばPOSTする必要があります:
{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()を使用しています。それらを無効にすることは助けにはなりませんでした。
Raw bodyフィールドにJSONを入力してリクエストが機能するようにするには、どの設定を使用する必要がありますか?
答えを明確にするために:Content-Type:application/json(リクエストヘッダーで)を設定し、適切な形式のjsonを使用する必要がありました。
フィールドのプロパティを引用符で囲んでみてください:{"title": "Awesome post!"、 "tags":["blue"、 "jeans"]}