Jabber 注册一个新用户的流程(JabberD + gloox)

原创 2006年05月22日 11:45:00
从网络实际发送,接收到的包来分析Jabber协议中注册一个新用户的过程
例子服务器所用的是 JabberD2 S7版 客户端是 gloox 0.8版的注册测试程序
用其它的服务器和客户端,可能会有所不同,但大体上应该是一样的

C->S 001
<?xml version='1.0' ?>
<stream:stream to='jabber.org'
xmlns='jabber:client'
xmlns:stream='http://etherx.jabber.org/streams'
xml:lang='en'
version='1.0'>
客户端向服务器建立连接,version='1.0'代表客户端的所用的XMPP的版本,没有表示是0.x版,o.x版与1.0版的验证方式不同

S->C 002
<?xml version='1.0'?>
<stream:stream xmlns:stream='http://etherx.jabber.org/streams'
xmlns='jabber:client'from='jabber.org'
version='1.0'
id='7mh6bxa8x95js1ubvkxyupysze2xpz6jhxtrzzpq'>
服务器响应连接

S->C 003
<stream:features xmlns:stream='http://etherx.jabber.org/streams'>
<mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>
    <mechanism>DIGEST-MD5</mechanism>
    <mechanism>PLAIN</mechanism>
</mechanisms>
</stream:features>
服务器返回支持的验证方式

C->S 004
<iq id='uid1' type='get'>
<query xmlns='jabber:iq:register'/>
</iq>
客户端发送一个注册新用户的请求

S->C 005
<iq xmlns='jabber:client' id='uid1' type='result'>
<query xmlns='jabber:iq:register'>
<username/>
<password/>
<instructions>Enter a username and password to register with this server.</instructions>
</query>
</iq>
服务器返回注册用户时,所要用到的字段,和注册提示信息

C->S 006
<iq id='uid2' type='set'>
<query xmlns='jabber:iq:register'>
<username>test3</username>
<password>1234</password>
</query>
</iq>
客户端按服务器的要求,发送注册信息

S->C 007
<iq xmlns='jabber:client' id='uid2' type='result'/>
服务器返回注册结果

相关文章推荐

Gloox 注册用户

改定履历 2011-09-09---------------------新建文本文档 引文: 调试GLOOX 1.0的注册功能颇费了一些功夫。总体逻辑如GLOOX自带的例...

gloox代码分析3 - 注册模块

jabber协议中如何注册一个用户?首先要与服务器建立一个连接, 在完成TLS握手之后就可以进行注册了,为什么不需要SASL握手呢?因为SASL握手只针对已经注册的用户在登陆服务器的时候使用.(修改密...

XMPP实现简单的登录注册功能

XMPPFramework框架是通过代理的方式实现消息传递的,所以要实现注册登录功能,先理解一些基本的连接过程: 1.运行后需要和服务器建立一个长连接,系统会反馈连接是否成功 2.成功时需要告...

在linux下编译gloox需要的环境

下载地址:http://camaya.net/gloox/download 【流程 】1、Zlib下载并安装2、下载openssl编译并安装3、下载gloox编译并安装如果支持openssl需要按照如...
  • lifemap
  • lifemap
  • 2010年04月28日 13:42
  • 2175

GLOOX 1.0---注册模块

改定履历 2011-09-09---------------------新建文本文档 引文: 调试GLOOX 1.0的注册功能颇费了一些功夫。总体逻辑如GLOOX自带的例子一样是毫无疑问...

关于xmpp协议的注册模块的实现原理(gloox库)

这里涉及到几个类:一.RegistrationHandler:1.简要说明:虚拟接口,接收来自Registration实体的事件信息(A virtual interface that receives...

gloox代码分析 - 注册模块(摘抄)

#jabber协议中如何注册一个用户?首先要与服务器建立一个连接, 在完成TLS握手之后就可以进行注册了,为什么不需要SASL握手呢?因为SASL握手只针对已经注册的用户在登陆服务器的时候使用.(修改...

gloox 之 Client

Client 类,实现了一个基本的Jabber客户端,派生自 ClientBase类 详细说明: 此类实现了一个基本的Jabber客户端 它支持SASL Authentication (SASL...

selenium2java 一个利用mysql获取验证码注册新用户的测试用例

本人在学习selenium2java的时候,需要写一个注册模块的用例,想了一下决定用一个虚拟的手机号和mysql数据库直接进行注册流程,然后再去数据库把这个账号删了。实验了一下,感觉还不错。分享出来,...

C#108注册新用户 源代码

  • 2016年12月17日 10:40
  • 55KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Jabber 注册一个新用户的流程(JabberD + gloox)
举报原因:
原因补充:

(最多只允许输入30个字)