銆?/span>絎旇呮寜姝よ鏄庣鐢ㄨ閫夐」錛屾灉鐒舵敞鍐屾垚鍔熴?/span>
榪欒鏄庡紑濮嬬殑娉ㄥ唽澶辮觸鏄拰鍖垮悕鐧誨綍鏈夊叧緋葷殑銆傛垜浠潵鐪嬩竴涓嬪紩鐢╮egistration_expmple渚嬪瓙鐧誨綍澶辮觸鏃剁殑XML嫻侊細
S->C錛氭湇鍔″櫒榪斿洖緇欏鎴風(fēng)鏀寔鐨勮璇佹満鍒訛細
<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瀹㈡埛绔殑鍝嶅簲嫻侊細
C->S錛氬鎴風(fēng)榪斿洖閫夋嫨鐨勮璇佹柟寮忥細
<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錛夌櫥褰曪紝寤虹珛浜嗕細璇濓紝鍦ㄦ湇鍔″櫒涓婃垜浠細鐪嬪埌榪欎釜浼氳瘽錛屽茍涓旀湇鍔″櫒鍙戦佸績璺充竴鐩寸淮鎶よ繖涓細璇濄傝繖縐嶆儏鍐典笅錛岃繖涓鎴風(fēng)鍐嶅彂閫佹敞鍐岃姹傦紙鍙︿竴涓韓浠斤級寤虹珛涓庢湇鍔″櫒鐨勮繛鎺ユ槸涓嶈鍏佽鐨勩傚叿浣撹鍙傝僗EP-0077錛圛n-Band Registration錛夛細鎴戜滑鍏蟲敞榪欎袱孌碉細
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璁よ瘉鏈哄埗錛屾瘮濡傝緗負“DIGEST-MD5”
j->setSASLMechanisms(SaslMechDigestMd5);
榪欑鏂瑰紡鐨勭己鐐規(guī)槸闇瑕佸厛紜畾鏈嶅姟鍣ㄦ敮鎸佺殑璁よ瘉鏈哄埗銆?/span>
鍥涖佹牴鎹甔EP-0077鎵榪幫紝鍗充嬌鍏跺悕鐧誨綍錛屾敞鍐屾祦鍙涓嶅甫“from”灞炴у簲璇ヤ篃鍙互銆傛墍浠ユ垜浠澶勭悊鍙戝嚭鐨勬敞鍐屾祦錛屽幓闄?#8220;from”灞炴ч噸鏂板彂閫佹敞鍐屾祦鍗沖彲銆?/span>
鏈枃杞嚜錛?/strong>http://blog.csdn.net/abcpanpeng/article/details/7370974

]]>
欧美大战日韩91综合一区婷婷久久青草|
一本色道久久综合|
超级碰久久免费公开视频|
香蕉久久夜色精品国产小说|
97精品国产97久久久久久免费|
无码人妻精品一区二区三区久久久|
亚洲国产精品无码久久一区二区
|
国产精品久久久久久久久软件|
久久激情亚洲精品无码?V|
亚洲嫩草影院久久精品|
亚洲国产精品成人久久蜜臀
|
国产福利电影一区二区三区久久久久成人精品综合
|
日本免费一区二区久久人人澡|
国产伊人久久|
亚洲AV无一区二区三区久久|
伊人久久综合精品无码AV专区|
国产∨亚洲V天堂无码久久久|
国内精品久久久久久麻豆|
国产69精品久久久久APP下载|
WWW婷婷AV久久久影片|
亚洲综合久久夜AV |
久久久国产精品福利免费|
亚洲一区精品伊人久久伊人|
性做久久久久久久|
成人综合久久精品色婷婷|
久久国产成人亚洲精品影院|
国产精品久久婷婷六月丁香|
久久夜色精品国产噜噜亚洲AV|
久久亚洲中文字幕精品一区|
无码人妻精品一区二区三区久久
|
亚洲AV乱码久久精品蜜桃|
午夜肉伦伦影院久久精品免费看国产一区二区三区
|
日韩十八禁一区二区久久|
久久精品国产半推半就|
久久超碰97人人做人人爱|
2019久久久高清456|
中文字幕无码av激情不卡久久|
国产国产成人久久精品|
久久夜色精品国产亚洲|
久久综合九色综合精品|
久久久国产打桩机|