Importação de uma função
Função
Esta API é usada para importar uma função.
URI
POST /v2/{project_id}/fgs/functions/import
| Parâmetro | Obrigatório | Tipo | Descrição | 
|---|---|---|---|
| project_id | Sim | String | ID do projeto. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 | 
Parâmetros de solicitação
| Parâmetro | Obrigatório | Tipo | Descrição | 
|---|---|---|---|
| func_name | Sim | String | Nome da função. | 
| file_name | Sim | String | Nome de arquivo. | 
| file_type | Sim | String | Tipo de arquivo. | 
| file_code | Sim | String | Código de função. O código deve ser codificado usando Base64. | 
| package | Não | String | Nome do aplicativo. O valor padrão é padrão. | 
Parâmetros de resposta
Código de estado: 200
| Parâmetro | Tipo | Descrição | 
|---|---|---|
| func_urn | String | o URN da função. | 
| func_name | String | Nome da função. | 
| domain_id | String | ID do domínio. | 
| namespace | String | ID do projeto. | 
| project_name | String | Nome do projeto. | 
| package | String | Grupo ao qual a função pertence. Este campo é definido para agrupar funções. | 
| runtime | String | Ambiente para execução de uma função. Opções: 
 Valores de enumeração: 
 | 
| timeout | Integer | Duração máxima que a função pode ser executada. Faixa de valor: 3s–900s. O valor pode ser de até 12 horas para usuários na lista de permissões. Para obter detalhes, entre em contato com o pessoal do FunctionGraph. | 
| handler | String | Manipulador de uma função no formato "xx.xx". Deve conter um ponto (.). Por exemplo, para a função myfunction.handler do Node.js, o nome do arquivo é myfunction.js, e a função do manipulador é handler. | 
| memory_size | Integer | Memória consumida por uma função. Unidade: MB. O valor pode ser 128, 256, 512, 768, 1024, 1280, 1536, 1792, 2048, 2560, 3072, 3584 ou 4096. O valor varia de 128 a 4096. | 
| cpu | Integer | Recursos de CPU de uma função. Unidade: millicore (1 núcleo = 1000 millicores). O valor deste campo é proporcional ao de MemorySize. Por padrão, são necessários 100 millicores de CPU para 128 MB de memória. O valor é calculado da seguinte forma: Memória/128 x 100 + 200 (millicores básicos da CPU) | 
| code_type | String | Tipo de código da função. Opções: 
 Valores de enumeração: 
 | 
| code_url | String | Se CodeType estiver definido como obs, insira a URL OBS do pacote de código de função. Se CodeType não estiver definido como obs, deixe este parâmetro em branco. | 
| code_filename | String | Nome de um arquivo de função. Este parâmetro é obrigatório somente quando CodeType é definido como jar ou zip. | 
| code_size | Long | Tamanho do código em bytes. | 
| user_data | String | Informações de nome/valor definidas para a função. Estes são parâmetros usados em uma função. Por exemplo, se uma função precisa acessar um host, defina Host={host_ip}. Você pode definir um máximo de 20 desses parâmetros, e seu comprimento total não pode exceder 4 KB. | 
| digest | String | O valor de hash SHA512 do código da função, que é usado para determinar se a função foi alterada. | 
| version | String | Versão da função, que é gerada automaticamente pelo sistema. O nome da versão está no formato "vAAAAMMDD-HHMMSS" (v+ano/mês/dia-hora/minuto/segundo). | 
| image_name | String | Identificador interno de uma versão de função. | 
| xrole | String | Agência utilizada pela função. Você precisa criar uma agência no console do IAM. Este campo é obrigatório quando uma função precisa acessar outros serviços. | 
| app_xrole | String | Agência usada pelo aplicativo da função. Você precisa criar uma agência no console do IAM. Este campo é obrigatório quando uma função precisa acessar outros serviços. | 
| description | String | Descrição da função. | 
| version_description | String | Descrição da versão. | 
| last_modified | String | Hora em que a função foi atualizada pela última vez. | 
| func_vpc | FuncVpc object | Configuração da VPC. | 
| depend_list | Array of strings | Os ID da dependência. | 
| strategy_config | StrategyConfig object | Configuração da política de função. | 
| extend_config | String | Configuração estendida. | 
| initializer_handler | String | Inicializador da função. Está no formato "xx.xx" e deve conter um ponto (.). Por exemplo, para a função myfunction.initializer do Node.js, o nome do arquivo é myfunction.js, e a função de inicialização é inicializador. | 
| initializer_timeout | Integer | Duração máxima que a função pode ser inicializada. Faixa de valor: 1s–300s. | 
| enterprise_project_id | String | ID do projeto empresarial. Este parâmetro é obrigatório se você criar uma função como um usuário enterprise. | 
| Parâmetro | Tipo | Descrição | 
|---|---|---|
| vpc_name | String | Nome da VPC. | 
| vpc_id | String | ID de VPC | 
| subnet_name | String | Nome da sub-rede. | 
| subnet_id | String | ID da sub-rede. | 
| cidr | String | Máscara de sub-rede. | 
| gateway | String | Gateway. | 
| Parâmetro | Tipo | Descrição | 
|---|---|---|
| concurrency | Integer | Número máximo de instâncias para uma única função. Para v1, o valor pode ser 0 ou –1; para v2, varia de –1 a 1000. | 
| concurrent_num | Integer | Número máximo de solicitações simultâneas para uma única instância. Este parâmetro é suportado apenas pela v2. O valor varia de –1 a 200.000. | 
Código de estado: 409
| Parâmetro | Tipo | Descrição | 
|---|---|---|
| error_code | String | Código de erro. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 | 
| error_msg | String | Mensagem de erro. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 | 
Código de estado: 500
| Parâmetro | Tipo | Descrição | 
|---|---|---|
| error_code | String | Código de erro. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 | 
| error_msg | String | Mensagem de erro. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 | 
Exemplos de solicitações
Importar uma função.
POST https://{Endpoint}/v2/{project_id}/fgs/functions/import { "func_name" : "test", "file_name" : "test.zip", "file_type" : "zip", "file_code" : "xxxxxxxxxxxxxxxxxxxxx" }
 Exemplo de respostas
Código de estado: 200
ok
{ "func_urn" : "urn:fss:{region}:46b6f338fc3445b8846c71dfb1fbd9e8:function:default:test_v1_2", "func_name" : "test_v1_2", "domain_id" : "14ee2e35****a7998b******aa24cabf", "namespace" : "46b6f338fc3445b8846c71dfb1fbd9e8", "project_name" : "{region}", "package" : "default", "runtime" : "Node.js6.10", "timeout" : 3, "handler" : "index.handler", "memory_size" : 128, "cpu" : 300, "code_type" : "zip", "code_filename" : "index.zip", "code_size" : 6709, "digest" : "faa825575c45437cddd4e369bea69893bcbe195d478178462ad90984fe72993f3f59d15f41c5373f807f3e05fb9af322c55dabeb16565c386e402413458e6068", "version" : "latest", "image_name" : "latest-191025153727@zehht", "last_modified" : "2019-10-25T15:37:27+08:00", "strategy_config" : { "concurrency" : -1 }, "enterprise_project_id" : "46b6f338fc3445b8846c71dfb1fbxxxx" }
  Código de estado: 409
Conflito
{ "error_code" : "FSS.1061", "error_msg" : "The function has existed" }
 Códigos de status
| Código de status | Descrição | 
|---|---|
| 200 | ok | 
| 409 | Conflito | 
| 500 | Erro de servidor interno. | 
Códigos de erro
Consulte Códigos de erro.
 
    