【问题标题】:Hitting endpoint GET of HTTP REST API, shows "Invalid User"点击 HTTP REST API 的端点 GET,显示“无效用户”
【发布时间】:2017-09-16 13:46:47
【问题描述】:

我正在访问 HTTP REST API 的端点 GET,http://tw-http-hunt-api-1062625224.us-east-2.elb.amazonaws.com/challenge

它说“对于每个 API 调用,将您的 UserID 作为带有键 'userId' 的 HTTP 标头传递。”

所以我在做http://tw-http-hunt-api-1062625224.us-east-2.elb.amazonaws.com/challenge/userId/xxxx

但它显示:[无效用户!]

我做错了什么?

【问题讨论】:

    标签: json rest api amazon-web-services


    【解决方案1】:

    您需要在 HTTP 标头中传递 userId,而不是在路径中。下面是 CURL 等价物:

    curl -X GET http://tw-http-hunt-api-1062625224.us-east-2.elb.amazonaws.com/challenge -H 'userId: test'
    

    您需要从您的客户那里发送类似的请求。

    【讨论】:

      【解决方案2】:

      很简单,

      您需要传递 HTTP Header,键为“userId”,值为“WHATEVER_USERNAME_YOU_ARE_GIVEN”

      [注意:我在 Java 代码的上下文中分享]

      类似的,

      private static HttpHeaders getHeaders() {
          HttpHeaders headers = new HttpHeaders();
          headers.add(USER_ID_HEADER, USER_ID);
          headers.setContentType(MediaType.APPLICATION_JSON);
          return headers;
      }
      

      这里, USER_ID_HEADER = "userId"USER_ID = "USERNAME_I_WISH_TO_PASS"

      如果您仍然难以找到解决方案,请告诉我。

      【讨论】: