Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Para exibir o cadastro de serviços RESTacesse o fluig com o usuário administrador, acione o menu Painel de Controle, localize a aba o agrupador Desenvolvimento e acione a opção Serviços. O recurso contém opções para inclusão, alteração, exclusão, consulta e teste dos clients.

...

Nota

Em atualizações anteriores à 1.6.5 (Liquid), esse recurso está disponível na aba no agrupador Gerais do Painel de Controle

...

Deck of Cards
idOAuth 1
effectTypefade
Card
defaulttrue
labelCadastro


  • Para cadastrar client com o tipo de autorização OAuth 1, informar os campos:
CampoCondição
Código do ServiçoObrigatório
DomínioObrigatório
Tipo de AutenticaçãoObrigatório
Consumer KeyObrigatório
Consumer SecretObrigatório
Token de acesso
Obrigatório
Token secreto
Obrigatório
URL Token de acesso
Obrigatório
URL solicitação de TokenObrigatório
URL Autorização de UsuárioObrigatório
URL para teste de ServiçoOpcional
Card
labelImagem

Image Modified


Image Modified


OAuth 2

...

Deck of Cards
idOAuth 2
effectTypefade
Card
labelCadastro


  • Para cadastrar client com o tipo de autorização OAuth 2, informar os campos:
CampoCondição
Código do ServiçoObrigatório
DomínioObrigatório
Tipo de AutenticaçãoObrigatório
Id ClienteObrigatório
Client SecretObrigatório
Refresh TokenApenas se disponibilizado pelo Serviço
Token de acessoObrigatório
URL Refresh TokenApenas se disponibilizado pelo Serviço
URL para teste de ServiçoOpcional
Informações
titleNota

Para o OAuth 2 utilizamos a autenticação do tipo Baerer

Card
labelImagem


...

Consumindo o serviço com autenticação OAuth 1, OAuth 2, Basic Authentication, Custom Authentication e None Authentication

...

Chamada via JavaScript

Para consumo do serviço a partir do desenvolvimento de workflows ou de desenvolvimento sobre a plataforma, deve-se informar os seguintes parâmetros no Javascript:

Como montar os parâmetros?

Para envio dos parâmetros no JSON, é obrigatório utilizar o nome das chaves conforme descrito abaixo.

  • companyId: Id da empresa. (sempre com o valor: getValue("WKCompany") + '')
  • serviceCode: Chave única cadastrada.
  • endpoint: Endpoint que será chamado.
  • timeoutService: definir limite de tempo (em segundos) durante a chamada ao serviço.
Informações

Para endpoint's que recebem QueryParam e PathParam, os parâmetros devem ser incluídos diretamente no endpoint. (endpoint : '/api/public/2.0/users/create?queryParam=exemple',)

  • method: Método HTTP do serviço.
  • params: Parâmetros em formato JSON para envio ao serviço.
  • options: Parâmetros em formato JSON para configuração do request (se o mesmo não for definido ele vai com as opções padrões que seria encoding: UTF-8 e mediaType: application/json).
  • headers: Parâmetros em formato JSON para configuração do header do request

...

Informações

Para habilitar a utilização de serviços REST pelo protocolo SSL, na propriedade options é necessário informar useSSL: true.

Exemplo de chamada aos serviços com HTTP methodPOST no JavaScript do desenvolvimento

Bloco de código
languagejs
themeEclipse
linenumberstrue
	try{
		var clientService = fluigAPI.getAuthorizeClientService();
		var data = {
			companyId : getValue("WKCompany") + '',
			serviceCode : 'bamboo',
			endpoint : '/api/public/2.0/users/create',
			method : 'post',// 'delete', 'patch', 'put', 'get'      
			timeoutService: '100', // segundos
			params : {
				login : 'authorize.client',
				email : '[email protected]',
				code : 'authorize.client',
				firstName : 'authorize',
				lastName : 'client',
				fullName : 'authorize client',
				password : '123',
				extData :{
					'addicional-data':'123456'
				}
			},
          options : {
             encoding : 'UTF-8',
			 mediaType: 'application/json',
			 useSSL : true
          },
		 headers: {
 			 Content-Type: 'application/json;charset=UTF-8'
		 }
		}
		// OU 
		var data = {
			companyId : getValue("WKCompany") + '',
			serviceCode : 'google',
			endpoint : '/userinfo/v2/me',
			method : 'get',
			timeoutService: '100' // segundos
		}
		// OU
		var data = {                                                    
			companyId : getValue("WKCompany") + '',
			serviceCode : 'fluig-local-basic',                      
			endpoint : '/api/public/2.0/testauthorizeclient/put',   
			method : 'put', // 'delete', 'patch', 'post', 'get'                                         
			timeoutService: '100', // segundos
			params : {                                              
					teste : 'teste'                                     
			}                                                       
		}                                                           
		var vo = clientService.invoke(JSON.stringify(data));

		if(vo.getResult()== null || vo.getResult().isEmpty()){
			throw new Exception("Retorno está vazio"); 
		}else{
			log.info(vo.getResult());
		}
	} catch(err) {
		throw new Exception(err); 
	}
 


Retorno da chamada

A chamada "clientService.invoke(JSON.stringify(data));" retorna um objeto com os parâmetros abaixo:

  • companyId: Id da empresa. (sempre com o valor: getValue("WKCompany") + '')
  • serviceCode: Chave única cadastrada.
  • description: Informa o serviceCode e se obteve sucesso. Ex: "google:SUCCESS".
  • endopint: Endpoint chamado.
  • result: String com o resultado retornado.
  • method: Método http do serviço.
  • strParams: Parâmetros em formato String.
  • params: Parâmetros em formato Map<StringObject> utilizados.

...