freeCodeCamp/curriculum/challenges/german/05-back-end-development-and.../basic-node-and-express/get-route-parameter-input-f...

2.2 KiB

id title challengeType forumTopicId dashedName
587d7fb2367417b2b2512bf5 Routen-Eingabeparameter vom Kunden erhalten 2 301513 get-route-parameter-input-from-the-client

--description--

Beim Aufbau einer API müssen wir den Nutzern die Möglichkeit geben, uns mitzuteilen, was sie von unserem Dienst erwarten. For example, if the client is requesting information about a user stored in the database, they need a way to let us know which user they're interested in. Eine Möglichkeit, dieses Ergebnis zu erreichen, ist die Verwendung von Routenparametern. Routenparameter sind benannte Segmente der URL, die durch Schrägstriche (/) getrennt sind. Jedes Segment erfasst den Wert des Teils der URL, der seiner Position entspricht. Die erfassten Werte sind im Objekt req.params zu finden.

route_path: '/user/:userId/book/:bookId'
actual_request_URL: '/user/546/book/6754'
req.params: {userId: '546', bookId: '6754'}

--instructions--

Erstelle einen Echo-Server, der über die Route GET /:word/echo eingebunden wird. Antworte mit einem JSON-Objekt, das die Struktur {echo: word} hat. Das zu wiederholende Wort findest du unter req.params.word. Du kannst deine Route in der Adressleiste deines Browsers testen, indem du einige passende Routen besuchst, z.B. your-app-rootpath/freecodecamp/echo.

--hints--

Test 1: Dein Echo-Server sollte Wörter korrekt wiederholen

(getUserInput) =>
  $.get(getUserInput('url') + '/eChOtEsT/echo').then(
    (data) => {
      assert.equal(
        data.echo,
        'eChOtEsT',
        'Test 1: the echo server is not working as expected'
      );
    },
    (xhr) => {
      throw new Error(xhr.responseText);
    }
  );

Test 2: Dein Echo-Server sollte Wörter korrekt wiederholen

(getUserInput) =>
  $.get(getUserInput('url') + '/ech0-t3st/echo').then(
    (data) => {
      assert.equal(
        data.echo,
        'ech0-t3st',
        'Test 2: the echo server is not working as expected'
      );
    },
    (xhr) => {
      throw new Error(xhr.responseText);
    }
  );

--solutions--

/**
  Backend challenges don't need solutions, 
  because they would need to be tested against a full working project. 
  Please check our contributing guidelines to learn more.
*/