【问题标题】:How to access Google Cloud Endpoints request header in Python and Java如何在 Python 和 Java 中访问 Google Cloud Endpoints 请求标头
【发布时间】:2017-07-20 02:07:49
【问题描述】:

endpoints方法中,如何获取请求头信息?

【问题讨论】:

    标签: google-app-engine google-cloud-endpoints google-app-engine-python


    【解决方案1】:

    Python:

    在端点方法中,self.request_state.headers 提供此信息。

    E.g., self.request_state.headers.get('authorization')
    

    Java: 将 HttpServletRequest (req) 参数添加到您的端点方法。可以通过 getHeader() 方法访问标头 例如,req.getHeader("Authorization") 看到这个question

    【讨论】:

      【解决方案2】:

      在 python 中对我有用的是:

      我使用的请求:http://localhost:8080/api/hello/v1/header?message=Hello World!

      python 代码:

          @endpoints.api(name='hello', version='v1', base_path='/api/')
          class EchoApi(remote.Service):
              @endpoints.method(
                  # This method takes a ResourceContainer defined above.
                  message_types.VoidMessage,
                  # This method returns an Echo message.
                  EchoResponse,
                  path='header',
                  http_method='GET',
                  name='header')
              def header(self, request):
                  header = request._Message__unrecognized_fields
                  output_message = header.get(u'message', None)[0]
                  return EchoResponse(message=output_message)
      

      【讨论】:

        猜你喜欢
        • 2018-02-22
        • 1970-01-01
        • 2014-07-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-05-23
        • 2014-02-06
        相关资源
        最近更新 更多