AUTENTICANDO NO WEBSERVICE

JMANGAS 04/02/2014 10:35:52
#434190
Pessoal,


Achei o seguinte exemplo em VB.NET, acho que com isso posso guardar a informação e enviá-la a cada método que eu chamar.


Dim ws As New edocInterfaceV2.EDOCInterfaceV2

ws.CookieContainer = New System.Net.CookieContainer

ws.Login([Ô]LOGIN[Ô], [Ô]SENHA[Ô])

Pergunta:

1 - Como faço para criar um objeto do tipo System.Net.CookieContainer, pois, este objeto que irá manter a sessão para que possa em seguida chamar os demais métodos, após o login ?

2 - O Problema é que ws não possui o método Login. Como juntar o cookiecontainer para que eu possa chamar o método login ?


Grato



NILSONTRES 04/02/2014 11:32:41
#434198
Dim imc As New localhost.Service1
imc.CookieContainer = Cookiejar

Dim st As String = imc.SessionIID
Assim eu crio uma sessão, caso contrario nem criava.
Só que, só mantem por 35 segundos, isso que não consegui resolver.
JMANGAS 04/02/2014 11:41:35
#434200

No meu caso como coloquei acima:

Dim ws As New edocInterfaceV2.EDOCInterfaceV2

ws.CookieContainer = New System.Net.CookieContainer

ws.Login([Ô]LOGIN[Ô], [Ô]SENHA[Ô])

Nessa declaração não possui [Ô]CookieContainer[Ô] ele informa que não é membro de [Ô]edocInterfaceV2.EDOCInterfaceV2[Ô]

OCELOT 04/02/2014 11:54:20
#434203
A propriedade CookieContainer só vai existir em seu objeto se a referência ao WebService não foi feita usando o WCF, se foi feita usando o WCF só a configuração no App.config já é o suficiente.

E se você simplesmente copiou este exemplo da internet exatamente do jeito que está eu diria que não vai funcionar mesmo, já que o edocInterfaceV2.EDOCInterfaceV2 provavelmente é o WebService que o exemplo usou, que obviamente vai ser diferente do seu.

Outra coisa é que esse sistema de Login não é padrão de WebService, isso é um sistema criado por quem desenvolveu o WebService

Então se você colocou o allowCookies=[Ô]true[Ô] no App.config, chamou o Login e deu que está OK, a próxima coisa que eu acho que você deveria ver é se está passando o valor correto para a outra função, por exemplo, o que é o parâmetro plogin? Você diz que [Ô]pelo que entendeu[Ô] é o login do usuário, mas isso só quem fez o WebService para te dizer com certeza, então se você não tem certeza absoluta deve perguntar para quem fez o WebService

Outra coisa que ainda não está clara e pode influenciar isso, o seu programa é Desktop (Windows Forms ou qualquer outro) ou é para Web (ASP.Net)?
JMANGAS 04/02/2014 17:47:11
#434252
OCELOT,

Primeiro obrigado pela ajuda....

Vamos lá:

Usa [Ô]SOAP[Ô]

Com relação ao exemplo modifiquei, porém, o erro persistiu....

No meu ficou assim:

Dim ws As New ServiceReference1.EDOCInterfaceV2SoapClient

porém, quando tento usar:

ws.CookieContainer = New System.Net.CookieContainer


[Ô]CookieContainer[Ô] ele informa que não é membro de [Ô]ServiceReference1.EDOCInterfaceV2SoapClient[Ô]


Comecei com desktop, agora abri uma pagina em branco em ASP.net , porém, como teste continuou a mesma coisa...

O Parâmetro pLogin é obrigatório, é o login que utilizou para se autenticar. Ele deverá ser informado a cada método consumido.

Grato

JMANGAS 06/02/2014 14:53:45
#434370

Pessoal,

Estava pegando a referência do [Ô]ADD Server Reference[Ô], quando na verdade tinha que:

Ao abrir a janela selecionar [Ô]Advanced[Ô] e selecionar WEB Reference (não tinha visto). Pronto agora consigo declarar:

ja.CookieContainer = New System.Net.CookieContainer

ja.Login(mLogin, mSenha)

Perfeito ele roda.

O que eu preciso agora é:

1) Este objeto [Ô]Container[Ô] é que irá manter a sessão para que possa em seguida chamar os demais métodos, após o login. Na declaração acima ele já mantém a sessão? Ou preciso fazer mais alguma coisa?

2) O Parâmetro pLogin é obrigatório, é o login que utilizou para se autenticar. Ele deverá ser informado a cada método consumido. Nessa situação aonde dentro do [Ô]cookie[Ô] posso buscar essa informação do usuário?

Grato.


Página 2 de 2 [17 registro(s)]
Tópico encerrado , respostas não são mais permitidas