AUTENTICANDO NO WEBSERVICE
Pessoal,
Estou tentando me comunicar com um WEB Service para acessar seus métodos:
Consigo acessar o método [Ô]Login[Ô] e receber a mensagem que está autenticado [Ô]OK[Ô], porém, não consigo manter a sessão para acessar os outros métodos ele retorna que usuário não está autenticado para acessar os demais métodos.
Para testar a comunicação criei o seguinte código:
WebService.ProdutoSoapClient webServiceSoapProduto = new WebService.ProdutoSoapClient();
private void button1_Click(object sender, EventArgs e)
{
string mLogin = [Ô]Teste[Ô];
string mSenha = [Ô]123[Ô];
webServiceSoapProduto.Login(mLogin, mSenha);
// Se eu colocar no textBox e acessar um elemento do método ele retorna que usuário está autenticado.
textBox3.Text = webServiceSoapProduto.Login(mLogin, mSenha).mensagem;
// E quando tento acessar outro método ele diz que não estou autenticado, como exemplo quando acesso um elemento do método ListarProdutoPorPeriodo ( Onde os parâmetros são os seguintes: ListarProdutoPorPeriodo(String plogin, String Data Inicial, String Data Final, Long Quantidade de Produtos)
mDescricao = webServiceSoapProduto.ListarProdutoPorPeriodo([Ô]Teste[Ô], [Ô]01/01/2013[Ô], [Ô]31/01/2014[Ô],10).produto.Descricao;
Como faço para manter conectado e acessar os outros métodos?
Grato.
Estou tentando me comunicar com um WEB Service para acessar seus métodos:
Consigo acessar o método [Ô]Login[Ô] e receber a mensagem que está autenticado [Ô]OK[Ô], porém, não consigo manter a sessão para acessar os outros métodos ele retorna que usuário não está autenticado para acessar os demais métodos.
Para testar a comunicação criei o seguinte código:
WebService.ProdutoSoapClient webServiceSoapProduto = new WebService.ProdutoSoapClient();
private void button1_Click(object sender, EventArgs e)
{
string mLogin = [Ô]Teste[Ô];
string mSenha = [Ô]123[Ô];
webServiceSoapProduto.Login(mLogin, mSenha);
// Se eu colocar no textBox e acessar um elemento do método ele retorna que usuário está autenticado.
textBox3.Text = webServiceSoapProduto.Login(mLogin, mSenha).mensagem;
// E quando tento acessar outro método ele diz que não estou autenticado, como exemplo quando acesso um elemento do método ListarProdutoPorPeriodo ( Onde os parâmetros são os seguintes: ListarProdutoPorPeriodo(String plogin, String Data Inicial, String Data Final, Long Quantidade de Produtos)
mDescricao = webServiceSoapProduto.ListarProdutoPorPeriodo([Ô]Teste[Ô], [Ô]01/01/2013[Ô], [Ô]31/01/2014[Ô],10).produto.Descricao;
Como faço para manter conectado e acessar os outros métodos?
Grato.
Pois é, eu também não consigo, consigo até criar uma sessão do tipo session([Ô]ID[Ô])=[Ô]1111[Ô], mas não consigo aumentar o time out.
fica no maximo 35 segundos.
Não sei se é isso que vc esta tentando fazer também.
fica no maximo 35 segundos.
Não sei se é isso que vc esta tentando fazer também.
Perguntas:
- O que retorna o método Login?
- O que é o parâmetro plogin no método ListarProdutoPorPeriodo?
Estou achando que o método login retorna um valor que deve ser passado no método [Ô]listar[Ô] e em todos os demais...
- O que retorna o método Login?
- O que é o parâmetro plogin no método ListarProdutoPorPeriodo?
Estou achando que o método login retorna um valor que deve ser passado no método [Ô]listar[Ô] e em todos os demais...
KERPLUNK,
Valeu pelo seu apoio, mal estou entrando nessa peguei essa banana para descascar... Não fui eu que construi o modelo apenas tenho que acessar....
- O que retorna o método Login?
IndSucesso - onde é um boolean
Mensagem - string
Executando o método Login consigo o seguinte retorno:
IndSucesso: TRUE
Mensagem: [Ô]Usuário Autenticado[Ô]
- O que é o parâmetro plogin no método ListarProdutoPorPeriodo?
- Pelo que entendi é o login do usuário, porém, o que foi passado é :
Tenho que utilizar o método login , manter a sessão para que o serviço identifique que você está autenticado e só então acessar os demais métodos.
Tentei usar [Ô]ClientCredentials[Ô], mas, não consegui montar entre o login e ListarProdutoPorPeriodo...
Grato.
Valeu pelo seu apoio, mal estou entrando nessa peguei essa banana para descascar... Não fui eu que construi o modelo apenas tenho que acessar....
- O que retorna o método Login?
IndSucesso - onde é um boolean
Mensagem - string
Executando o método Login consigo o seguinte retorno:
IndSucesso: TRUE
Mensagem: [Ô]Usuário Autenticado[Ô]
- O que é o parâmetro plogin no método ListarProdutoPorPeriodo?
- Pelo que entendi é o login do usuário, porém, o que foi passado é :
Tenho que utilizar o método login , manter a sessão para que o serviço identifique que você está autenticado e só então acessar os demais métodos.
Tentei usar [Ô]ClientCredentials[Ô], mas, não consegui montar entre o login e ListarProdutoPorPeriodo...
Grato.
Verifique se você não está reinstanciando o serviço à cada chamada e que está passando o nome do usuário corretamente em cada método ao invés de [Ô]teste[Ô]
Se não foi você que fez o WebService você deveria ver com quem fez ele como deve ser usado corretamente.
Uma coisa que pode estar acontecendo é que se este WebService usa Cookies você pode ter que habilitar elas no seu programa.
Como você aparentemente usa o WCF para acessar o WebService você pode olhar no seu App.config que provavelmente você vai ter algo do tipo
O que precisa mudar ali é adicionar um allowCookies=[Ô]true[Ô] no binding, ficando
<binding name=[Ô]ProdutoSoap[Ô] allowCookies=[Ô]true[Ô] />
Uma coisa que pode estar acontecendo é que se este WebService usa Cookies você pode ter que habilitar elas no seu programa.
Como você aparentemente usa o WCF para acessar o WebService você pode olhar no seu App.config que provavelmente você vai ter algo do tipo
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name=[Ô]ProdutoSoap[Ô]/>
</basicHttpBinding>
</bindings>
O que precisa mudar ali é adicionar um allowCookies=[Ô]true[Ô] no binding, ficando
<binding name=[Ô]ProdutoSoap[Ô] allowCookies=[Ô]true[Ô] />
Prezado KERPLUNK,
Não estou .....
Não estou .....
Prezado OCELOT,
Está do jeito que vc falou, coloquei o que vc informou.... Só que eu nunca trabalhei com isso....
Após executar o método Login(mLogin,mSenha)
eu consigo guardar esse retorno parta acessar os outros métodos?
O que me passaram foi que após a execução do login, eu preciso manter a sessão para que o webservice identifique que você está autenticado e só então acessar os demais métodos.
Grato.
Está do jeito que vc falou, coloquei o que vc informou.... Só que eu nunca trabalhei com isso....
Após executar o método Login(mLogin,mSenha)
eu consigo guardar esse retorno parta acessar os outros métodos?
O que me passaram foi que após a execução do login, eu preciso manter a sessão para que o webservice identifique que você está autenticado e só então acessar os demais métodos.
Grato.
Se já está com o allowCookies=[Ô]true[Ô] e você está usando sempre a mesma instancia do ProdutoSoapClient então só quem fez o WebService para te dizer o que está errado.
Mas eu tenho que [Ô]tratar[Ô] esses cookies? Para uma identificação não seria necessário guardar em algum container ou algo parecido.
Com o WCF acredito que seja só marcar o allowCookies no App.config que ele cuida sozinho disso
Tópico encerrado , respostas não são mais permitidas