xmpp框架的分析、匯入及問題解決
demo ——
xmpp即時通訊(已匯入框架)密碼:3a7n
這篇我們利用xmpp框架來實現一下登陸功能,先來介紹一下xmpp框架內的幾個比較重要的檔案
* xmppstream:開發過程中主要的互動類,所有自定義**和拓展都基於此類
* xmppparser:
提供xmppstream解析
* xmppjid:提供乙個jid(不可改變)實現,遵循nscopying協議和nscoding協議
* xmppelement:以下三個xmpp元素的基類
* xmppiq:資料請求
* xmppmessage:訊息
* xmppmodule:開發xmpp拓展時使用
* xmpplogging:xmpp日誌框架
* xmppinternal :整個xmpp框架內部核心和底層內容注:
接下來我們來配置xmppstream例項
1. 配置連線伺服器的方式
2. 新增**
3. 新增模組
4. 開始連線
5. 開始授權
xmpp登入的方式和我們正常情況下登入的習慣不同,它是客戶端與伺服器先建立乙個長連線,然後客戶端將jid傳送到伺服器,伺服器告訴客戶端已經連線成功,然後客戶端再把密碼傳送給伺服器,如圖:
了解了xmpp的連線過程,我們就按照這個過程來實現登入和登出模組
首先我們要引用
#pragma mark - xmpp
// 初始化xmppstream
- (void)setupxmppstream
初始化完成後我們就要和伺服器進行連線
// 連線伺服器
- (void)connecttohost
// 設定jid resource標記登入的客戶端
xmppjid
*myjid = [
xmppjid
jidwithuser
:@"wangwu"domain
:@"***************.local" resource
:@"ios"];
_xmppstream.myjid = myjid;
// 設定伺服器網域名稱 可設定網域名稱或者ip位址
_xmppstream
.hostname
= @"************xx.local";
// 設定埠(預設的話可省略)
_xmppstream.hostport =
5222;
// 連線
nserror *error = nil;
if(![_xmppstream connectwithtimeout
:xmppstreamtimeoutnoneerror
:&error])
}有登入對應的就有登出功能,所以我們先來完成登出
// 登出
- (void)disconnecttohost
連線成功後,我們需要獲得授權,所以把密碼傳送給伺服器
// 傳送密碼
- (void)sendpwdtohost
}- (void)sendonlinetohost
#pragma mark - xmppstream**
// 連線成功
- (void)xmppstreamdidconnect:(xmppstream *)sender
// 連線失敗
- (void)xmppstreamdiddisconnect:(xmppstream *)sender witherror:(nserror*)error
// 授權成功
- (void)xmppstreamdidauthenticate:(xmppstream *)sender
// 授權失敗
- (void)xmppstream:(xmppstream *)sender didnotauthenticate:(ddxmlelement *)error
到這裡xmpp的登入和登出就演示完畢了,本篇的demo請前往 ——
xmpp實現登入與登出功能
XMPP協議的使用 註冊,登陸,登出
authenticatewithpasswor方法登陸即可 inte ce xmpptool xmpp核心類 property nonatomic,strong xmppstream stream property nonatomic,copy resultblock resultblock end...
ThinkPHP實現登陸功能
思路 前台輸入賬號密碼,後台自定義乙個函式checknamepwd 用於驗證賬號密碼正確與否,在控制器裡呼叫,其中,checknamepwd 方法驗證賬號密碼正確性是首先通過賬號查詢密碼,然後把查詢出來的密碼和使用者輸入的密碼比較,相同則登陸成功,否則登入失敗!首先在模型類定義乙個函式checkna...
php實現註冊登陸功能
先來截圖下需要用到的檔案 這個是signup.html 1237 82627 寫好html繼續寫signup.php 1 2 header content type text html charset utf8 設定下utf 8編碼34 if isset post submit 78 usernam...