銆?/span>絎旇呮寜姝よ鏄庣鐢ㄨ閫夐」錛屾灉鐒舵敞鍐屾垚鍔熴?/span>
榪欒鏄庡紑濮嬬殑娉ㄥ唽澶辮觸鏄拰鍖垮悕鐧誨綍鏈夊叧緋葷殑銆傛垜浠潵鐪嬩竴涓嬪紩鐢╮egistration_expmple渚嬪瓙鐧誨綍澶辮觸鏃剁殑XML嫻侊細(xì)
S->C錛氭湇鍔″櫒榪斿洖緇欏鎴風(fēng)鏀寔鐨勮璇佹満鍒訛細(xì)
<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><mechanism>ANONYMOUS</mechanism><mechanism>CRAM-MD5</mechanism></mechanisms><compression xmlns='http://jabber.org/features/compress'><method>zlib</method></compression><auth xmlns='http://jabber.org/features/iq-auth'/><register xmlns='http://jabber.org/features/iq-register'/></stream:features>
浠庝笂闈ML嫻佷腑鎴戜滑鍙互鐪嬪埌錛岄粯璁penFire鏀寔鍥涚璁よ瘉鏈哄埗錛屽垎鍒槸錛欴IGEST-MD5銆丳LAIN銆丄NONYMOUS銆丆RAM-MD5銆傜劧鍚庢垜浠湅GLOOX瀹㈡埛绔殑鍝嶅簲嫻侊細(xì)
C->S錛氬鎴風(fēng)榪斿洖閫夋嫨鐨勮璇佹柟寮忥細(xì)
<auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='ANONYMOUS'/>
鍙互鐪嬪嚭錛屽鎴風(fēng)”鏃犺?#8220;鐨勯夋嫨浜?#8221;鍖垮悕“--'ANONYMOUS'鏂瑰紡
鎺ヤ笅鏉ョ殑嫻佺▼灝辨槸瀹㈡埛绔?#8221;鏃犺?#8220;鐨勯夋嫨浜嗕互鍖垮悕鐨勬柟寮忕櫥褰曚簡鏈嶅姟鍣紝鐒跺悗鍐嶅彂閫佹敞鍐岃姹傦紝璇鋒眰濡備笅錛?/p>
<iq id='uid:4e69eccd:00006784' type='set' from='447e0585@zxl/447e0585' xmlns='jabber:client'><query xmlns='jabber:iq:register'><username>bbaxiao</username><password>123456</password><name>test2</name><email>163@gmail.com</email></query></iq>
鎴戜滑鐪嬪埌錛孖Q鑺傞噷鍖呭惈“form”灞炴э紝鍗沖鎴風(fēng)鍖垮悕韜喚鏍囪瘑銆?/span>
娉ㄦ剰錛屼竴涓鎴風(fēng)宸茬粡浠ヤ竴涓韓浠斤紙鐢辨湇鍔″櫒涓存椂鍒嗛厤鐨勪竴涓狫ID錛夌櫥褰曪紝寤虹珛浜嗕細(xì)璇濓紝鍦ㄦ湇鍔″櫒涓婃垜浠細(xì)鐪嬪埌榪欎釜浼?xì)璇濆Q屽茍涓旀湇鍔″櫒鍙戦佸績璺充竴鐩寸淮鎶よ繖涓細(xì)璇濄傝繖縐嶆儏鍐典笅錛岃繖涓鎴風(fēng)鍐嶅彂閫佹敞鍐岃姹傦紙鍙︿竴涓韓浠斤級寤虹珛涓庢湇鍔″櫒鐨勮繛鎺ユ槸涓嶈鍏佽鐨勩傚叿浣撹鍙傝僗EP-0077錛圛n-Band Registration錛夛細(xì)鎴戜滑鍏蟲敞榪欎袱孌碉細(xì)
If the entity cancels its registration with its "home" server (i.e., the server at which it has maintained its XMPP account), then the entity SHOULD NOT include a 'from' or 'to' address in the remove request the server SHOULD then return a <not-authorized/> stream error and terminate all active sessions for the entity. The server SHOULD perform the remove based on the bare JID <localpart@domain.tld> associated with the current session or connection over which it received the remove request. If the server is an instant messaging and presence server that conforms to XMPP IM [8], the server SHOULD also cancel all existing presence subscriptions related to that entity (as stored in the entity's roster).
If the entity cancels its registration with a service other than its home server, its home server MUST stamp a 'from' address on the remove request, which in accordance with XMPP Core will be the entity's full JID <localpart@domain.tld/resource>. The service MUST perform the remove based on the bare JID <localpart@domain.tld> portion of the 'from' address.
If the entity cancels its registration with its "home" server (i.e., the server at which it has maintained its XMPP account), then the entity SHOULD NOT include a 'from' or 'to' address in the remove request the server SHOULD then return a <not-authorized/> stream error and terminate all active sessions for the entity. The server SHOULD perform the remove based on the bare JID <localpart@domain.tld> associated with the current session or connection over which it received the remove request. If the server is an instant messaging and presence server that conforms to XMPP IM [8], the server SHOULD also cancel all existing presence subscriptions related to that entity (as stored in the entity's roster).
If the entity cancels its registration with a service other than its home server, its home server MUST stamp a 'from' address on the remove request, which in accordance with XMPP Core will be the entity's full JID <localpart@domain.tld/resource>. The service MUST perform the remove based on the bare JID <localpart@domain.tld> portion of the 'from' address.
鎰忔濇槸璇存敞鍐岃姹備笉鑳藉寘鍚?#8220;from”灞炴с?/span>
姝e父鐨勬敞鍐屾祦濡備笅錛?/span>
<iq id='uid:4e69eccd:00003d6c' type='set' xmlns='jabber:client'><query xmlns='jabber:iq:register'><username>bbaxiao</username><password>123456</password><name>test2</name><email>163@gmail.com</email></query></iq>
---------------------------
緇間笂鎵榪幫紝瑙e喅鏂規(guī)濡備笅錛?/span>
涓銆佸叧闂璷penFire鐨勫尶鍚嶇櫥褰曞姛鑳姐俕_^……
浜屻佺姝LOOX鍖垮悕璁よ瘉鍔熻兘銆?/span>
file:client.cpp
fun: int Client::getSaslMechs( Tag* tag )
line:423
//灝?23琛屾敞閲婃帀鍗沖彲銆?nbsp;
422錛歩f( tag->hasChildWithCData( mech, "ANONYMOUS" ) )
423 //mechs |= SaslMechAnonymous;
閲嶆柊緙栬瘧鐢熸垚DLL鍗沖彲銆?/span>涓夈佹墜鍔ㄨ緗瓽LOOX瀹㈡埛绔疭ASL璁よ瘉鏈哄埗
鍦ㄨ皟鐢╦->connect()涔嬪墠璁劇疆SASL璁よ瘉鏈哄埗錛屾瘮濡傝緗負(fù)“DIGEST-MD5”
j->setSASLMechanisms(SaslMechDigestMd5);
榪欑鏂瑰紡鐨勭己鐐規(guī)槸闇瑕佸厛紜畾鏈嶅姟鍣ㄦ敮鎸佺殑璁よ瘉鏈哄埗銆?/span>
鍥涖佹牴鎹甔EP-0077鎵榪幫紝鍗充嬌鍏跺悕鐧誨綍錛屾敞鍐屾祦鍙涓嶅甫“from”灞炴у簲璇ヤ篃鍙互銆傛墍浠ユ垜浠澶勭悊鍙戝嚭鐨勬敞鍐屾祦錛屽幓闄?#8220;from”灞炴ч噸鏂板彂閫佹敞鍐屾祦鍗沖彲銆?/span>
鏈枃杞嚜錛?/strong>http://blog.csdn.net/abcpanpeng/article/details/7370974

]]>
狠狠88综合久久久久综合网|
免费精品99久久国产综合精品|
俺来也俺去啦久久综合网|
久久久www免费人成精品|
欧美一区二区三区久久综合|
成人久久精品一区二区三区
|
久久久久久久亚洲精品|
久久久久久国产精品美女
|
久久99精品久久久久久不卡|
无码乱码观看精品久久|
久久久久久九九99精品|
国产精品va久久久久久久|
亚洲国产成人精品91久久久|
久久精品国产久精国产思思|
91超碰碰碰碰久久久久久综合|
中文字幕久久精品|
色综合久久精品中文字幕首页|
午夜视频久久久久一区|
久久综合中文字幕|
久久精品无码专区免费东京热|
久久久精品国产亚洲成人满18免费网站|
伊人色综合久久天天人手人婷
|
精品久久久无码中文字幕天天|
亚洲va中文字幕无码久久|
久久综合精品国产一区二区三区|
色狠狠久久AV五月综合|
日本WV一本一道久久香蕉|
久久综合视频网站|
久久久久久久亚洲精品|
久久91精品综合国产首页|
欧美综合天天夜夜久久|
狠狠狠色丁香婷婷综合久久五月|
亚洲精品乱码久久久久久按摩
|
99久久精品日本一区二区免费|
色狠狠久久综合网|
综合久久精品色|
色综合久久夜色精品国产|
国产精品美女久久福利网站|
亚洲AV伊人久久青青草原|
久久久受www免费人成|
伊人久久大香线蕉精品不卡|