freeCodeCamp/curriculum/challenges/chinese/05-apis-and-microservices/apis-and-microservices-proj.../request-header-parser-micro...

2.4 KiB
Raw Blame History

id title challengeType forumTopicId dashedName
bd7158d8c443edefaeb5bdff 请求头解析器微服务 4 301507 request-header-parser-microservice

--description--

构建一个 JavaScript 的全栈应用,在功能上与这个应用相似:https://request-header-parser-microservice.freecodecamp.rocks/。 可以采用下面的一种方式完成这个挑战:

当完成本项目,请确认有一个正常运行的 demo 可以公开访问。 然后将 URL 提交到 Solution Link 中。 此外,还可以将项目的源码提交到 GitHub Link 中。

--hints--

提交自己的项目,而不是示例的 URL。

(getUserInput) => {
  assert(
    !/.*\/request-header-parser-microservice\.freecodecamp\.rocks/.test(
      getUserInput('url')
    )
  );
};

/api/whoami 发送请求,返回一个 JSON 对象这个JSON 对象应该含有存放 IP 地址的 ipaddress 键中。

(getUserInput) =>
  $.get(getUserInput('url') + '/api/whoami').then(
    (data) => assert(data.ipaddress && data.ipaddress.length > 0),
    (xhr) => {
      throw new Error(xhr.responseText);
    }
  );

/api/whoami 发送请求,返回一个 JSON 对象,这个 JSON 对象应该含有存放语言首选项的 language 键。

(getUserInput) =>
  $.get(getUserInput('url') + '/api/whoami').then(
    (data) => assert(data.language && data.language.length > 0),
    (xhr) => {
      throw new Error(xhr.responseText);
    }
  );

/api/whoami 发送请求,返回一个 JSON 对象,这个 JSON 对象应该含有存放(发送请求的)软件的 software 键。

(getUserInput) =>
  $.get(getUserInput('url') + '/api/whoami').then(
    (data) => assert(data.software && data.software.length > 0),
    (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.
*/