Preciso conectar via socket em uma aplicação e pra isso preciso também enviar usuário e senha, normalmente faço assim:
socket cliente = new Socket(ip,porta)
Como faço pra incluir usuário e senha?
Preciso conectar via socket em uma aplicação e pra isso preciso também enviar usuário e senha, normalmente faço assim:
socket cliente = new Socket(ip,porta)
Como faço pra incluir usuário e senha?
Preciso conectar via socket em uma aplicação e pra isso preciso também enviar usuário e senha, normalmente faço assim:socket cliente = new Socket(ip,porta)Como faço pra incluir usuário e senha?
depende da aplicação que vc está tentando conectar.
Geralmente, primeiro a conexão é aberta, depois são trocadas credenciais, e o servidor permite ou não o acesso
Preciso conectar via socket em uma aplicação e pra isso preciso também enviar usuário e senha, normalmente faço assim:socket cliente = new Socket(ip,porta)Como faço pra incluir usuário e senha?
depende da aplicação que vc está tentando conectar.
Geralmente, primeiro a conexão é aberta, depois são trocadas credenciais, e o servidor permite ou não o acesso
Você está dizendo pra eu tentar fazer a conexão sem usuário e senha pra ver se passa? Tem uma outra aplicação python que faz a mesma conexão nesta aplicação que preciso conectar e que envia usuario e senha.
No caso de eu solicitar a conexão pra depois enviar o usuário e senha, como faço isso?
O que você pode fazer é um método conectar onde você passa como parâmetros o usuário e senha. Dentro deste método ele já faz a conexão com o servidor e já passa os parâmetros…
Não tem jeito, para fazer algum tipo de autenticação você tem que estar conectado primeiro, não é?
O que você pode fazer é um método conectar onde você passa como parâmetros o usuário e senha. Dentro deste método ele já faz a conexão com o servidor e já passa os parâmetros…Não tem jeito, para fazer algum tipo de autenticação você tem que estar conectado primeiro, não é?
Então pelo exemplo em python que me passaram eu entendi que eu conecto e depois eu autentico com usuário e senha.
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
HOST = '127.0.0.1'
PORT = 5000
USUARIO = 'ypytrix'
s.connect(("127.0.0.1", 5000))
s.send("\r\n")
s.send("Action: login\r\n")
s.send("Username: %s\r\n" % USUARIO)
s.send("Secret: %s\r\n" % USUARIO)
s.send("\r\n")
s.send("Action: PauseQueueMember\r\n")
s.send("Agent: %s\r\n" % agente)
s.send("\r\n")
sim, vc abre o socket, aí utilizando essa conexão que acabou de abrir, vc envia os dados de usuário / senha ou qualquer outro dado que seja necessário
mas é importante saber qual a ordem e a forma que o software do outro lado espera receber essas informações
no caso do código que vc mandou, é só seguir os mesmos passos do programa
abre o socket (connect)
envia um “\r\n”
envia “Action login\r\n”
envia “Username: usuario\r\n”
envia “Secret: usuario\r\n”
parece bem simples
sim, vc abre o socket, aí utilizando essa conexão que acabou de abrir, vc envia os dados de usuário / senha ou qualquer outro dado que seja necessáriomas é importante saber qual a ordem e a forma que o software do outro lado espera receber essas informações
no caso do código que vc mandou, é só seguir os mesmos passos do programa
abre o socket (connect)
envia um “\r\n”
envia “Action login\r\n”
envia “Username: usuario\r\n”
envia “Secret: usuario\r\n”parece bem simples
Ta mas depois de abrir o socket como fazer o restante em java?
OutputStream e InputStream… tem alguns exemplos prontos se você procurar melhor.
Um pequeno exemplo abaixo. Quando o cliente se conecta ao servidor, o servidor envia uma mensagem para o cliente e esse imprime na tela a mensagem:
import java.io.DataInputStream;
import java.io.IOException;
import java.net.Socket;
public class TesteSocketsClient {
public static void main(String[] args) throws IOException, InterruptedException {
Socket s = new Socket("127.0.0.1", 8080);
DataInputStream is = new DataInputStream(s.getInputStream());
String resposta = is.readUTF();
System.out.println(resposta);
}
}
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public class TesteSockets {
public static void main(String[] args) throws IOException {
ServerSocket ss = new ServerSocket(8080);
while (true) {
Socket s = ss.accept();
DataOutputStream os = new DataOutputStream(s.getOutputStream());
if (s != null) {
os.writeUTF("Conectado OK.");
os.flush();
}
}
}
}