Форум программистов, компьютерный форум, киберфорум
Java ME (J2ME)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
black_0

Сокет-подключение к серверу

06.02.2012, 18:04. Показов 1969. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
короче такой вопрос. делаю подключение к чату Galaxy (javagala.ru)
лог снифера с коментариями:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Receive: Return Code: 0x00000000
HAAAPSII // приходит первая команда от сервера. в общем нече не значит
 
 
Receive: Return Code: 0x00000000
HAAAPSI zBeidDXh0k 4 //вторая команда. 2ая часть это хэш
 
 
Send: Return Code: 0x00000000
:ru IDENT 99 -1 4030 :GALA //идет отправка протокола и других данных
 
 
Receive: Return Code: 0x00000000
DOMAINS galaxy.mobstudio.ru //команда от сервера 
 
 
Send: Return Code: 0x00000000
RECOVER qwerty1234 // отсылаемкод от аккаунта
 
 
Receive: Return Code: 0x00000000
REGISTER 1234567 16qvfeeq 0 //приходит команда о том что такой юзер найден
 
 
Send: Return Code: 0x00000000
USER 1234567 16qvfeeq 0 3243wYgtBd //отпрака айди пас и сгенерированного хэша
 
 
Receive: Return Code: 0x00000000
999 :AUTH OK //команда успешной авторизации
на делфи этот код выглядит так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
procedure TForm1.ParseLine(Str: String);
var
  Data: TStringList
begin
 
  if Str = '' then
    exit;
 
  Memo1.Lines.Add(Str);
 
  Data := TStringList.Create;
  Data.Delimiter := ' ';
  Data.DelimitedText := Str;
 
  try
 
      if Data[0] = 'HAAAPSI' then
      Begin
      key:=GHash.CreateHash(Data[1]);
      WSocket1.SendLine(':ru IDENT 99 -1 4030 :GALA't);
      WSocket1.SendLine('RECOVER ' + Trim(Edit1.Text)); 
      End
 
    else
 
 
    if Data[0] = 'REGISTER' then
      Begin
      WSocket1.SendLine('USER '+Data[1]+' '+Data[2]+' 0 '+key);
      End
 
    else
и т.д.

хочу реализовать это на java.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public void run() { //run
try {
StreamConnection socket = (StreamConnection)Connector.open("socket://galaxy.mobstudio.ru:6667"); //открываем соедиение
DataInputStream  dis = socket.openDataInputStream();
DataOutputStream dos = socket.openDataOutputStream();
while (true) {
byte buff[] = new byte[32];
dis.read(buff);
msg = new String(buff);
System.out.println(msg);
String substr = new String("HAAAPSI ");
String str = new String(msg);
 
if (str.startsWith(substr) == true) 
{
dos.write(":ru IDENT 111 -1 4030 0 1 :GALA".getBytes(),0,31);
recover = "RECOVER 1234567890"; 
dos.write(recover.getBytes(),0,18);
}
} catch(IOException ioe) {}
 
} //run
казалось бы все ок НО

смотрим лог снифера этого подключения:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
Receive: Return Code: 0x00000000
HAAAPSII //приняли
 
 
Receive: Return Code: 0x00000000
HAAAPSI hgY6RPPOAo 5 //тоже
 
 
Send: Return Code: 0x00000000
:ru IDENT 111 -1 4030 0 1 :GALA //отпрака идента
 
Send: Return Code: 0x00000000
RECOVER 1234567890// код
и все. на этом все молчит. прошу помочь. возможно проблема в неправильной отправке через java-сокет потому что если отправляется не опознанная команда на сервер он посылает соответствующую команду. в этом случае ничего нету. жду ответа
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.02.2012, 18:04
Ответы с готовыми решениями:

Подключение к удалённому серверу mysql на openshift
Привет коллеги. Сегодня воспользовался бесплатными плюшками на OpenShift, создал приложение на Tomcat 7 запихнул туда картридж Mysql...

Сокет: подключение к серверу
Здравствуйте, сам новичок в Java, попросили сделать кое что. Есть такая задача: Есть какой-то сервер, порт и хост знаем. Нужно...

Повторное подключение к серверу через сокет
Здравствуйте, долго сижу на одном месте и никак не могу сделать додуматься в чем проблема. У меня есть клиент, который каждые 10 секунд...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.02.2012, 18:04
Помогаю со студенческими работами здесь

Как подключится к сокет-серверу?
Всем привет! Объясните мне, глупому нубу, как работать с сокетами. Просто подробно расскажите как писать код. Мне важно: создание сервера,...

Как подключиться к веб-сокет серверу?
Доброго времени суток. Необходимо реализовать взаимодействие 1С (8.2) с веб-сокет сервером. Попытался это сделать через dll ку. Но...

Как подключиться к сокет серверу через интернет
помогите разобраться что не так написал на сокетах программу сервер и программу клиент в локальной сети все идет, но через интернет не...

Как занести сокет, который подключается к серверу, в массив
Есть сервер (код ниже), нужно добавить подключаемый сокет в массив. Знаю что это нужно делать в методе ConnectCallback, но не знаю как...

Как к сокет серверу подключиться с клинта на другом компьютере (из одной сети)?
Добрый день. есть игра, что то на подобии викторины игрок 1 вводит ответ отправляет на сервер - на сервере ответ обрабатывается и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru