Advertisement
Guest User

Untitled

a guest
Apr 24th, 2019
207
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include "restful.ch"
  2.  
  3.  
  4. WSRESTFUL Feira DESCRIPTION "exemplo de rest para uma feira"
  5.     WSDATA cTipoFruta AS STRING
  6.     WSDATA nQuantidade AS INTEGER
  7.  
  8.     WSMETHOD GET bananas ;
  9.     DESCRIPTION "metodo para banca de bananas" ;
  10.     WSSYNTAX "caminho/banca/banana/{cTipoFruta}" ;
  11.     PATH "caminho/banca/banana/{cTipoFruta}"
  12.  
  13.     WSMETHOD GET macas ;
  14.     DESCRIPTION "metodo para banca de maça" ;
  15.     WSSYNTAX "caminho/banca/maca/{cTipoFruta}" ;
  16.     PATH "caminho/banca/maca/{cTipoFruta}"
  17. END WSRESTFUL
  18.  
  19.  
  20. WSMETHOD GET bananas PATHPARAM cTipoFruta WSRECEIVE nQuantidade WSSERVICE Feira
  21.     // aqui no metodo existem duas variaveis ctipodruta, uma local que entrou por parametro
  22.     // outra que é da instancia que tem o valor que foi passado e pode ser acessada com self:ctipofruta
  23.  
  24.     cTipoFruta := Self:cTipoFruta
  25.  
  26.     Default Self:nQuantidade := 1
  27.     nQuantidade := Self:nQuantidade
  28.  
  29.     // quando é chamado http://server/rest/feira/caminho/banca/banana/prata
  30.     // prata fica armazenado em self:ctipofruta e self:nquantidade fica null
  31.     // como self:nquantidade fica null ele é substituido pelo default 1
  32.     // em seguida armazenado na variavel local nQuantidade
  33.  
  34.     // quando é chamado http://server/rest/feira/caminho/banca/banana/nanica?nquantidade=10
  35.     // nanica fica armazenado em self:ctipofruta e self:nquantidade fica com 10
  36.     // como self:nquantidade não esta null nao recebe o valor padrão
  37.     // em seguida armazenado na variavel local nQuantidadeq
  38. Return
  39.  
  40.  
  41. WSMETHOD GET macas PATHPARAM cTipoFruta WSRECEIVE nQuantidade WSSERVICE Feira
  42.     // aqui no metodo existem duas variaveis ctipodruta, uma local que entrou por parametro
  43.     // outra que é da instancia que tem o valor que foi passado e pode ser acessada com self:ctipofruta
  44.  
  45.     cTipoFruta := Self:cTipoFruta
  46.  
  47.     Default Self:nQuantidade := 1
  48.     nQuantidade := Self:nQuantidade
  49.  
  50.     // quando é chamado http://server/rest/feira/caminho/banca/maca/gala
  51.     // gala fica armazenado em self:ctipofruta e self:nquantidade fica null
  52.     // como self:nquantidade fica null ele é substituido pelo default 1
  53.     // em seguida armazenado na variavel local nQuantidade
  54.  
  55.     // quando é chamado http://server/rest/feira/caminho/banca/maca/red?nquantidade=10
  56.     // red fica armazenado em self:ctipofruta e self:nquantidade fica com 10
  57.     // como self:nquantidade não esta null nao recebe o valor padrão
  58.     // em seguida armazenado na variavel local nQuantidadeq
  59. Return
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement