URL Fetch para serviços agrupados antigos

Esta página descreve como emitir pedidos HTTP e HTTPS e receber respostas através do serviço URL Fetch.

Pedidos

Protocolos de pedidos

Uma aplicação pode obter um URL através de HTTP ou HTTPS. O protocolo que deve ser usado é inferido através da análise do protocolo no URL de destino.

O URL a obter pode usar qualquer número de porta nos seguintes intervalos:

  • 8090
  • 440450
  • 102465535

Se a porta não for mencionada no URL, a porta é implícita no protocolo. Os pedidos HTTP ocorrem na porta 80 e os pedidos HTTPS ocorrem na porta 443.

Métodos de pedido

Se emitir pedidos através do serviço URL Fetch, pode usar qualquer um dos seguintes métodos HTTP:

  • GET
  • POST
  • PUT
  • HEAD
  • DELETE
  • PATCH

Um pedido pode incluir cabeçalhos HTTP e, para pedidos POST, PUT e PATCH, um payload.

Encaminhamento por proxy de pedidos

Tenha em atenção que o serviço URL Fetch usa um proxy compatível com HTTP/1.1 para obter o resultado.

Para impedir que uma aplicação cause uma recursão infinita de pedidos, um controlador de pedidos não pode obter o seu próprio URL. Ainda é possível causar uma recursão infinita por outros meios. Por isso, tenha cuidado se a sua aplicação puder ser feita para obter pedidos de URLs fornecidos pelo utilizador.

Cabeçalhos do pedido

A sua aplicação pode definir cabeçalhos HTTP para o pedido de saída.

Por exemplo, quando envia um pedido HTTP POST, se um cabeçalho Content-Type não for definido explicitamente, o cabeçalho é definido como x-www-form-urlencoded. Este é o tipo de conteúdo usado pelos formulários Web.

Por motivos de segurança, não é possível modificar os seguintes cabeçalhos pela aplicação:

  • Content-Length
  • Host
  • Vary
  • Via
  • X-Appengine-Inbound-Appid
  • X-Forwarded-For
  • X-ProxyUser-IP

Estes cabeçalhos são definidos com valores precisos pelo App Engine, conforme adequado. Por exemplo, o App Engine calcula o cabeçalho Content-Length a partir dos dados do pedido e adiciona-o ao pedido antes de o enviar.

Os seguintes cabeçalhos indicam o ID da aplicação da app requerente:

  • User-Agent. Este cabeçalho pode ser modificado, mas o App Engine anexa uma string de identificador para permitir que os servidores identifiquem pedidos do App Engine. A string anexada tem o formato "AppEngine-Google; (+http://code.google.com/appengine; appid: APPID)", em que APPID é o identificador da sua app.
  • X-Appengine-Inbound-Appid. Este cabeçalho não pode ser modificado e é adicionado automaticamente se o pedido for enviado através do serviço URL Fetch.

Limites de tempo dos pedidos

Pode definir um prazo ou um tempo limite para um pedido. Por predefinição, o tempo limite de um pedido é de 10 segundos.

Ligações seguras e HTTPS

A sua aplicação pode obter um URL de forma segura através do HTTPS para estabelecer ligação a servidores seguros. Os dados de pedido e resposta são transmitidos através da rede de forma encriptada.

Por predefinição, o proxy URL Fetch valida o anfitrião com o qual contacta. Este comportamento permite à API detetar ataques do tipo man-in-the-middle entre o App Engine e o anfitrião remoto quando usa HTTPS.

Responses

Se usar a API URL Fetch, tenha em atenção que o serviço URL Fetch devolve todos os dados de resposta, incluindo a resposta, o código, os cabeçalhos e o corpo.

Por predefinição, se o serviço URL Fetch receber uma resposta com um código de redirecionamento, o serviço segue o redirecionamento. O serviço segue até cinco respostas de redirecionamento e, em seguida, devolve o recurso final.

Use a obtenção de URLs no servidor de desenvolvimento

Quando a sua aplicação está em execução no servidor de desenvolvimento do App Engine no seu computador, as chamadas ao serviço URL Fetch são processadas localmente. O servidor de desenvolvimento obtém URLs contactando diretamente anfitriões remotos a partir do seu computador, usando qualquer configuração de rede que o computador esteja a usar para aceder à Internet.

Quando testar as funcionalidades da sua aplicação que obtêm URLs, certifique-se de que o seu computador consegue aceder aos anfitriões remotos.

Quotas e limites para a obtenção de URLs

Para ver informações sobre as quotas do serviço de obtenção de URL, consulte o artigo Quotas. Para ver a utilização atual da quota da sua aplicação, aceda à página Detalhes da quota naGoogle Cloud consola.

Aceda à página Detalhes da quota

Além disso, aplicam-se os seguintes limites à utilização do serviço URL Fetch: