Class: Google::Api::BackendRule

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/api/backend.rb

Overview

A backend rule provides configuration for an individual API element.

Defined Under Namespace

Modules: PathTranslation Classes: OverridesByRequestProtocolEntry

Instance Attribute Summary collapse

Instance Attribute Details

#address::String

Returns The address of the API backend.

The scheme is used to determine the backend protocol and security. The following schemes are accepted:

SCHEME PROTOCOL SECURITY http:// HTTP None https:// HTTP TLS grpc:// gRPC None grpcs:// gRPC TLS

It is recommended to explicitly include a scheme. Leaving out the scheme may cause constrasting behaviors across platforms.

If the port is unspecified, the default is:

  • 80 for schemes without TLS
  • 443 for schemes with TLS

For HTTP backends, use protocol to specify the protocol version.

Returns:

  • (::String)

    The address of the API backend.

    The scheme is used to determine the backend protocol and security. The following schemes are accepted:

    SCHEME PROTOCOL SECURITY http:// HTTP None https:// HTTP TLS grpc:// gRPC None grpcs:// gRPC TLS

    It is recommended to explicitly include a scheme. Leaving out the scheme may cause constrasting behaviors across platforms.

    If the port is unspecified, the default is:

    • 80 for schemes without TLS
    • 443 for schemes with TLS

    For HTTP backends, use protocol to specify the protocol version.



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# File 'proto_docs/google/api/backend.rb', line 113

class BackendRule
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Api::BackendRule]
  class OverridesByRequestProtocolEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Path Translation specifies how to combine the backend address with the
  # request path in order to produce the appropriate forwarding URL for the
  # request.
  #
  # Path Translation is applicable only to HTTP-based backends. Backends which
  # do not accept requests over HTTP/HTTPS should leave `path_translation`
  # unspecified.
  module PathTranslation
    PATH_TRANSLATION_UNSPECIFIED = 0

    # Use the backend address as-is, with no modification to the path. If the
    # URL pattern contains variables, the variable names and values will be
    # appended to the query string. If a query string parameter and a URL
    # pattern variable have the same name, this may result in duplicate keys in
    # the query string.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.cloudfunctions.net/getUser
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe
    CONSTANT_ADDRESS = 1

    # The request path will be appended to the backend address.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.appspot.com
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST
    APPEND_PATH_TO_ADDRESS = 2
  end
end

#deadline::Float

Returns The number of seconds to wait for a response from a request. The default varies based on the request protocol and deployment environment.

Returns:

  • (::Float)

    The number of seconds to wait for a response from a request. The default varies based on the request protocol and deployment environment.



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# File 'proto_docs/google/api/backend.rb', line 113

class BackendRule
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Api::BackendRule]
  class OverridesByRequestProtocolEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Path Translation specifies how to combine the backend address with the
  # request path in order to produce the appropriate forwarding URL for the
  # request.
  #
  # Path Translation is applicable only to HTTP-based backends. Backends which
  # do not accept requests over HTTP/HTTPS should leave `path_translation`
  # unspecified.
  module PathTranslation
    PATH_TRANSLATION_UNSPECIFIED = 0

    # Use the backend address as-is, with no modification to the path. If the
    # URL pattern contains variables, the variable names and values will be
    # appended to the query string. If a query string parameter and a URL
    # pattern variable have the same name, this may result in duplicate keys in
    # the query string.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.cloudfunctions.net/getUser
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe
    CONSTANT_ADDRESS = 1

    # The request path will be appended to the backend address.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.appspot.com
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST
    APPEND_PATH_TO_ADDRESS = 2
  end
end

#disable_auth::Boolean

Returns When disable_auth is true, a JWT ID token won't be generated and the original "Authorization" HTTP header will be preserved. If the header is used to carry the original token and is expected by the backend, this field must be set to true to preserve the header.

Returns:

  • (::Boolean)

    When disable_auth is true, a JWT ID token won't be generated and the original "Authorization" HTTP header will be preserved. If the header is used to carry the original token and is expected by the backend, this field must be set to true to preserve the header.



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# File 'proto_docs/google/api/backend.rb', line 113

class BackendRule
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Api::BackendRule]
  class OverridesByRequestProtocolEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Path Translation specifies how to combine the backend address with the
  # request path in order to produce the appropriate forwarding URL for the
  # request.
  #
  # Path Translation is applicable only to HTTP-based backends. Backends which
  # do not accept requests over HTTP/HTTPS should leave `path_translation`
  # unspecified.
  module PathTranslation
    PATH_TRANSLATION_UNSPECIFIED = 0

    # Use the backend address as-is, with no modification to the path. If the
    # URL pattern contains variables, the variable names and values will be
    # appended to the query string. If a query string parameter and a URL
    # pattern variable have the same name, this may result in duplicate keys in
    # the query string.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.cloudfunctions.net/getUser
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe
    CONSTANT_ADDRESS = 1

    # The request path will be appended to the backend address.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.appspot.com
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST
    APPEND_PATH_TO_ADDRESS = 2
  end
end

#jwt_audience::String

Returns The JWT audience is used when generating a JWT ID token for the backend. This ID token will be added in the HTTP "authorization" header, and sent to the backend.

Returns:

  • (::String)

    The JWT audience is used when generating a JWT ID token for the backend. This ID token will be added in the HTTP "authorization" header, and sent to the backend.



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# File 'proto_docs/google/api/backend.rb', line 113

class BackendRule
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Api::BackendRule]
  class OverridesByRequestProtocolEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Path Translation specifies how to combine the backend address with the
  # request path in order to produce the appropriate forwarding URL for the
  # request.
  #
  # Path Translation is applicable only to HTTP-based backends. Backends which
  # do not accept requests over HTTP/HTTPS should leave `path_translation`
  # unspecified.
  module PathTranslation
    PATH_TRANSLATION_UNSPECIFIED = 0

    # Use the backend address as-is, with no modification to the path. If the
    # URL pattern contains variables, the variable names and values will be
    # appended to the query string. If a query string parameter and a URL
    # pattern variable have the same name, this may result in duplicate keys in
    # the query string.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.cloudfunctions.net/getUser
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe
    CONSTANT_ADDRESS = 1

    # The request path will be appended to the backend address.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.appspot.com
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST
    APPEND_PATH_TO_ADDRESS = 2
  end
end

#min_deadline::Float

Deprecated.

This field is deprecated and may be removed in the next major version update.

Returns Deprecated, do not use.

Returns:

  • (::Float)

    Deprecated, do not use.



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# File 'proto_docs/google/api/backend.rb', line 113

class BackendRule
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Api::BackendRule]
  class OverridesByRequestProtocolEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Path Translation specifies how to combine the backend address with the
  # request path in order to produce the appropriate forwarding URL for the
  # request.
  #
  # Path Translation is applicable only to HTTP-based backends. Backends which
  # do not accept requests over HTTP/HTTPS should leave `path_translation`
  # unspecified.
  module PathTranslation
    PATH_TRANSLATION_UNSPECIFIED = 0

    # Use the backend address as-is, with no modification to the path. If the
    # URL pattern contains variables, the variable names and values will be
    # appended to the query string. If a query string parameter and a URL
    # pattern variable have the same name, this may result in duplicate keys in
    # the query string.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.cloudfunctions.net/getUser
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe
    CONSTANT_ADDRESS = 1

    # The request path will be appended to the backend address.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.appspot.com
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST
    APPEND_PATH_TO_ADDRESS = 2
  end
end

#operation_deadline::Float

Returns The number of seconds to wait for the completion of a long running operation. The default is no deadline.

Returns:

  • (::Float)

    The number of seconds to wait for the completion of a long running operation. The default is no deadline.



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# File 'proto_docs/google/api/backend.rb', line 113

class BackendRule
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Api::BackendRule]
  class OverridesByRequestProtocolEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Path Translation specifies how to combine the backend address with the
  # request path in order to produce the appropriate forwarding URL for the
  # request.
  #
  # Path Translation is applicable only to HTTP-based backends. Backends which
  # do not accept requests over HTTP/HTTPS should leave `path_translation`
  # unspecified.
  module PathTranslation
    PATH_TRANSLATION_UNSPECIFIED = 0

    # Use the backend address as-is, with no modification to the path. If the
    # URL pattern contains variables, the variable names and values will be
    # appended to the query string. If a query string parameter and a URL
    # pattern variable have the same name, this may result in duplicate keys in
    # the query string.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.cloudfunctions.net/getUser
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe
    CONSTANT_ADDRESS = 1

    # The request path will be appended to the backend address.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.appspot.com
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST
    APPEND_PATH_TO_ADDRESS = 2
  end
end

#overrides_by_request_protocol::Google::Protobuf::Map{::String => ::Google::Api::BackendRule}

Returns The map between request protocol and the backend address.

Returns:



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# File 'proto_docs/google/api/backend.rb', line 113

class BackendRule
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Api::BackendRule]
  class OverridesByRequestProtocolEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Path Translation specifies how to combine the backend address with the
  # request path in order to produce the appropriate forwarding URL for the
  # request.
  #
  # Path Translation is applicable only to HTTP-based backends. Backends which
  # do not accept requests over HTTP/HTTPS should leave `path_translation`
  # unspecified.
  module PathTranslation
    PATH_TRANSLATION_UNSPECIFIED = 0

    # Use the backend address as-is, with no modification to the path. If the
    # URL pattern contains variables, the variable names and values will be
    # appended to the query string. If a query string parameter and a URL
    # pattern variable have the same name, this may result in duplicate keys in
    # the query string.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.cloudfunctions.net/getUser
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe
    CONSTANT_ADDRESS = 1

    # The request path will be appended to the backend address.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.appspot.com
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST
    APPEND_PATH_TO_ADDRESS = 2
  end
end

#path_translation::Google::Api::BackendRule::PathTranslation



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# File 'proto_docs/google/api/backend.rb', line 113

class BackendRule
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Api::BackendRule]
  class OverridesByRequestProtocolEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Path Translation specifies how to combine the backend address with the
  # request path in order to produce the appropriate forwarding URL for the
  # request.
  #
  # Path Translation is applicable only to HTTP-based backends. Backends which
  # do not accept requests over HTTP/HTTPS should leave `path_translation`
  # unspecified.
  module PathTranslation
    PATH_TRANSLATION_UNSPECIFIED = 0

    # Use the backend address as-is, with no modification to the path. If the
    # URL pattern contains variables, the variable names and values will be
    # appended to the query string. If a query string parameter and a URL
    # pattern variable have the same name, this may result in duplicate keys in
    # the query string.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.cloudfunctions.net/getUser
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe
    CONSTANT_ADDRESS = 1

    # The request path will be appended to the backend address.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.appspot.com
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST
    APPEND_PATH_TO_ADDRESS = 2
  end
end

#protocol::String

Returns The protocol used for sending a request to the backend. The supported values are "http/1.1" and "h2".

The default value is inferred from the scheme in the address field:

SCHEME PROTOCOL http:// http/1.1 https:// http/1.1 grpc:// h2 grpcs:// h2

For secure HTTP backends (https://) that support HTTP/2, set this field to "h2" for improved performance.

Configuring this field to non-default values is only supported for secure HTTP backends. This field will be ignored for all other backends.

See https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids for more details on the supported values.

Returns:

  • (::String)

    The protocol used for sending a request to the backend. The supported values are "http/1.1" and "h2".

    The default value is inferred from the scheme in the address field:

    SCHEME PROTOCOL http:// http/1.1 https:// http/1.1 grpc:// h2 grpcs:// h2

    For secure HTTP backends (https://) that support HTTP/2, set this field to "h2" for improved performance.

    Configuring this field to non-default values is only supported for secure HTTP backends. This field will be ignored for all other backends.

    See https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids for more details on the supported values.



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# File 'proto_docs/google/api/backend.rb', line 113

class BackendRule
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Api::BackendRule]
  class OverridesByRequestProtocolEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Path Translation specifies how to combine the backend address with the
  # request path in order to produce the appropriate forwarding URL for the
  # request.
  #
  # Path Translation is applicable only to HTTP-based backends. Backends which
  # do not accept requests over HTTP/HTTPS should leave `path_translation`
  # unspecified.
  module PathTranslation
    PATH_TRANSLATION_UNSPECIFIED = 0

    # Use the backend address as-is, with no modification to the path. If the
    # URL pattern contains variables, the variable names and values will be
    # appended to the query string. If a query string parameter and a URL
    # pattern variable have the same name, this may result in duplicate keys in
    # the query string.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.cloudfunctions.net/getUser
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe
    CONSTANT_ADDRESS = 1

    # The request path will be appended to the backend address.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.appspot.com
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST
    APPEND_PATH_TO_ADDRESS = 2
  end
end

#selector::String

Returns Selects the methods to which this rule applies.

Refer to selector for syntax details.

Returns:

  • (::String)

    Selects the methods to which this rule applies.

    Refer to selector for syntax details.



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# File 'proto_docs/google/api/backend.rb', line 113

class BackendRule
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Api::BackendRule]
  class OverridesByRequestProtocolEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Path Translation specifies how to combine the backend address with the
  # request path in order to produce the appropriate forwarding URL for the
  # request.
  #
  # Path Translation is applicable only to HTTP-based backends. Backends which
  # do not accept requests over HTTP/HTTPS should leave `path_translation`
  # unspecified.
  module PathTranslation
    PATH_TRANSLATION_UNSPECIFIED = 0

    # Use the backend address as-is, with no modification to the path. If the
    # URL pattern contains variables, the variable names and values will be
    # appended to the query string. If a query string parameter and a URL
    # pattern variable have the same name, this may result in duplicate keys in
    # the query string.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.cloudfunctions.net/getUser
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe
    CONSTANT_ADDRESS = 1

    # The request path will be appended to the backend address.
    #
    # # Examples
    #
    # Given the following operation config:
    #
    #     Method path:        /api/company/{cid}/user/{uid}
    #     Backend address:    https://example.appspot.com
    #
    # Requests to the following request paths will call the backend at the
    # translated path:
    #
    #     Request path: /api/company/widgetworks/user/johndoe
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe
    #
    #     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
    #     Translated:
    #     https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST
    APPEND_PATH_TO_ADDRESS = 2
  end
end