Ich versuche, eine einfache Hallo Welt Anwendung mit Swagger und Node.js, die "Hallo" ausgibt, wenn ich GET aufrufen, aber ich bekomme den Fehler: TypeError: res.json ist keine Funktion. Unter Verwendung des Swagger-Editor erstellt ich folgende yaml api:Node.js TypeError: res.json ist keine Funktion
---
swagger: "2.0"
info:
version: "1.0.0"
title: "Hello World"
paths:
/hello:
get:
x-swagger-router-controller: "hello_world"
description: "Returns 'Hello' to the caller"
operationId: "hello"
parameters:
- name: "name"
in: "query"
description: "The name of the person to whom to say hello"
required: false
type: "string"
responses:
200:
description: "Returns greeting"
schema:
type: "string"
title: "HelloWorldResponse"
400:
description: "Invalid characters in \"user\" were provided"
definitions: {}
ich die Prahlerei Editor verwendet, um einen node.js Server zu erzeugen und einen hello_world.js Controller erstellt. Wenn ich versuche, den Code mithilfe der Swagger-Benutzeroberfläche zu testen, indem ich http://localhost:8081/hello?name=victory aufruft, sehe ich den Fehler: TypeError: res.json ist keine Funktion. Hier ist mein node.js Code:
'use strict';
var util = require('util');
module.exports = {
hello: hello
};
function hello(req, res) {
// variables defined in the Swagger document can be referenced using req.swagger.params.{parameter_name}
var name = req.swagger.params.name.value || 'stranger';
var greeting = util.format('Hello, %s!', name);
// this sends back a JSON response which is a single string
res.json(greeting); //ERRORS OUT HERE
}
Ich bin neu in Swagger und Node.js so bin ich nicht sicher, warum ich erhalte eine Fehlermeldung oder den besten Weg zur Behebung von Fehlern, es zu gehen. Jede Hilfe, die Sie mir geben können, wäre willkommen.
UPDATE: Es stellt sich heraus, dass res.end (Begrüßung) funktioniert. Kann jemand erklären, warum res.json und res.send nicht tun?
Ist 'res.send' ok? –
Ich bekomme TypeError: res.send ist keine Funktion, wenn ich res.json (Gruß) ändere; res.send (Begrüßung); – jencoston
können Sie zeigen, wie Sie den 'hallo' Controller verwenden? –