秋霞电影网午夜鲁丝片无码,真人h视频免费观看视频,囯产av无码片毛片一级,免费夜色私人影院在线观看,亚洲美女综合香蕉片,亚洲aⅴ天堂av在线电影猫咪,日韩三级片网址入口

Android系統(tǒng) 自助式網(wǎng)絡(luò)直播SDK技術(shù)實(shí)現(xiàn)方案

上傳人:無*** 文檔編號(hào):89316572 上傳時(shí)間:2022-05-12 格式:DOC 頁數(shù):10 大?。?01KB
收藏 版權(quán)申訴 舉報(bào) 下載
Android系統(tǒng) 自助式網(wǎng)絡(luò)直播SDK技術(shù)實(shí)現(xiàn)方案_第1頁
第1頁 / 共10頁
Android系統(tǒng) 自助式網(wǎng)絡(luò)直播SDK技術(shù)實(shí)現(xiàn)方案_第2頁
第2頁 / 共10頁
Android系統(tǒng) 自助式網(wǎng)絡(luò)直播SDK技術(shù)實(shí)現(xiàn)方案_第3頁
第3頁 / 共10頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《Android系統(tǒng) 自助式網(wǎng)絡(luò)直播SDK技術(shù)實(shí)現(xiàn)方案》由會(huì)員分享,可在線閱讀,更多相關(guān)《Android系統(tǒng) 自助式網(wǎng)絡(luò)直播SDK技術(shù)實(shí)現(xiàn)方案(10頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、. Android系統(tǒng)“自助式網(wǎng)絡(luò)直播SDK〞技術(shù)實(shí)現(xiàn)方案 目錄 一、簡(jiǎn)介3 三、權(quán)限開通申請(qǐng)3 四、SDK使用準(zhǔn)備3 1、下載SDK&DEMO3 2、開發(fā)環(huán)境要求3 3、需要導(dǎo)入的Jar3 4、動(dòng)態(tài)庫SO3 5、權(quán)限及配置3 6、代碼混淆3 五、快速接入介紹3 1、權(quán)限認(rèn)證信息配置3 2、發(fā)起直播流程3 3、觀看直播流程3 4、根底功能說明3 5、響應(yīng)事件〔回調(diào)〕3 6、發(fā)起直播詳解3 7、RTMP觀看直播詳解3 8、HLS觀看直播及HLS觀看回放3 9、支持文檔演示3 六、DEMO簡(jiǎn)介3 七、第三方K值認(rèn)證3 1、認(rèn)證流程3 2、開啟設(shè)置3

2、 3、K值使用3 一、 簡(jiǎn)介 本文檔為了指導(dǎo)開發(fā)者更快使用Android系統(tǒng)上的“自助式網(wǎng)絡(luò)直播效勞SDK〞,默認(rèn)讀者已經(jīng)熟悉IDE的根本使用方法〔本文以Eclipse為例〕,以及具有一定的編程知識(shí)根底等。 支持的產(chǎn)品特性如下: 分類 特性名稱 描述 發(fā)起直播 支持編碼類型 音頻編碼:AAC,視頻編碼:H.264 支持推流協(xié)議 RTMP 視頻分辨率 640*480 屏幕朝向 橫屏、豎屏 閃光燈 開/關(guān) 靜音 開/關(guān) 切換攝像頭 前、后置攝像頭 目標(biāo)碼率 使用軟編,碼率固定在300-400之間,暫不可修改 支持環(huán)境 Android 4.0以

3、上, 觀看直播 支持播放協(xié)議 RTMP/HLS 延時(shí) RTMP: 2-4秒,HLS:20秒左右 支持解碼 H.264 文檔演示〔new〕 支持文檔演示 文檔可與視頻同步演示 觀看回放 支持協(xié)議 HLS 權(quán)限 第三方K值認(rèn)證 支持客戶自己的權(quán)限驗(yàn)證機(jī)制來控制觀看直播、觀看回放的權(quán)限 其它 代碼平安 支持代碼混淆 二、 權(quán)限開通申請(qǐng) 請(qǐng)點(diǎn)擊 API&SDK權(quán)限申請(qǐng)立即溝通申請(qǐng),申請(qǐng)后客戶經(jīng)理會(huì)在線上與您直接聯(lián)系。 審核通過后,可以獲取開發(fā)應(yīng)用的權(quán)限信息:App_Key、Secret_Key、App Secret_Key。 三、 SDK使用準(zhǔn)備

4、 1、 下載SDK&DEMO 2、 開發(fā)環(huán)境要求 Pc操作系統(tǒng):64window系統(tǒng) JDK: 1.6以上 Eclipse : 建議使用官方已經(jīng)集成的Eclipse ,慎重使用Android studio Android: 4.0以上 備注: Android設(shè)備操作系統(tǒng)需要4.0以上, 需要訪問手機(jī)硬件,暫不支持模擬器開發(fā) 3、 需要導(dǎo)入的Jar Vhallsdk.jar 4、 動(dòng)態(tài)庫SO Libdynload.so Libffmpeg.so Libjingle.so libstlport_shared.so libVinnyLive.so 5、 權(quán)限及配置 <

5、uses-permission android:name="android.permission.CAMERA" />

6、mission android:name="android.permission.INTERNET" />

7、ission android:name="android.permission.FLASHLIGHT" /> 備注:主要是訪問網(wǎng)絡(luò).Wife.還有手機(jī)硬件的Ca

8、mera 6、 代碼混淆 假設(shè)app打包需要進(jìn)展代碼混淆,請(qǐng)?zhí)砑樱? -dontwarn - .vhall.** -dontwarn - .vinny.** -keep class .vhall.**{*;} -keep class .vinny.**{*;} 四、 快速接入介紹 1、 權(quán)限認(rèn)證信息配置 以下信息配置到文件里。文件名稱:src\\e*ample\rtmpdemo\Constants.java public class Constants { public static final String APP_KEY = ""; public static f

9、inal String APP_SECRET_KEY = ""; } 其中:App_Key、App_Secret_Key:從此頁面獲取到, 2、 發(fā)起直播流程 第一步預(yù)覽采集Camera: 在Activity的onCreate方法中,創(chuàng)立CameraNewView,并且初始化 第二步發(fā)起直播: 設(shè)置開場(chǎng)按鈕,在可點(diǎn)擊情況下調(diào)用NativeLive.StartPublish(String Url)。 第三步建立Socket 發(fā)起直播成功后,連接Socket建立參會(huì) new ZReqEngine().new Attend〔〕 第四步停頓直播: 設(shè)置停頓按鈕,在可點(diǎn)擊情況下調(diào)用

10、NativeLive.StopPublish() 3、 觀看直播流程 第一步創(chuàng)立觀看View 在Activity的onCreate方法中,創(chuàng)立PlayView,并且初始化 第二步開場(chǎng)觀看 NativeLive.StartRecv(String watchUrl) 第三步停頓觀看 NativeLive.StopRecv() 4、 根底功能說明 備注:以下功能根據(jù)各自需求自行選取使用,設(shè)置后即可顯示 Step 1 : 初始化播放器 PlayView playview = new PlayView(GLSurfaceView) playview.init(with,heig

11、ht) playview.updataScreen(byte [] Y ,byte [] U ,byte [] V ) playview.updataScreenAll(byte [] YUV) Step 2 : 初始化音頻 AudioPlay audio = new AudioPlay() Audio.init(int sampleRate, int channelConfig, int audioFormat) Audio.play(byte[] data, int size) Audio.destory() Step 3 : 使用自定義CameraNewView

12、 自定義view已經(jīng)對(duì)手機(jī)攝像頭〔Camera〕做好了處理,實(shí)時(shí)采集每一幀數(shù)據(jù),包括攝像頭的切換,閃光的開啟,用戶可以自行調(diào)用。 mCameraView=(CameraNewView) this.findViewById(R.id.cameraview); 5、 響應(yīng)事件〔回調(diào)〕 直播觀看過程中的回調(diào) LiveCallback : 在你當(dāng)前開啟直播的頁面,初始化直播回調(diào): LiveCallback livecallback = new LiveCallback ; 實(shí)現(xiàn)其中的回調(diào)方法: public void notifyVideoData(byte[] data) pu

13、blic int notifyAudioData(byte[] data, int size) public void notifyEvent(int resultCode, String content) public void onH264Video(byte[] data, int size, int type) 在當(dāng)前Activity onCreate方法中參加回調(diào) LiveObs.setCallBack(livecallback); 其中notifyEvent〔resultCode ,content〕返回的resultCode 是底層定義的直播狀態(tài),需要用戶對(duì)其自行處理。

14、狀態(tài)定義如下: public static final int OK_PublishConnect = 0; //直播連接效勞器成功 public static final int ERROR_PublishConnect = 1; //直播連接效勞器失敗 public static final int OK_WatchConnect = 2; //觀看直播連接效勞器成功 public static final int ERROR_WatchConnect = 3; //觀看直播連接效勞器失敗 public static final int StartBufferi

15、ng = 4;//開場(chǎng)緩沖 public static final int StopBuffering = 5;//停頓緩沖 public static final int ERROR_Param = 6;//錯(cuò)誤參數(shù) public static final int ERROR_NeedReconnect = 7;//錯(cuò)誤需要重新連接 public static final int ERROR_Send = 8;//發(fā)送直播流失敗 public static final int INFO_Speed_Upload = 9;//上傳速度 Kbps單位 publi

16、c static final int INFO_Speed_Download = 10;//下載速度Kbps單位 public static final int INFO_NetWork_Status = 11;//網(wǎng)絡(luò)狀態(tài) public static final int INFO_Decoded_Video = 12;//視頻解碼 public static final int INFO_Decoded_Audio = 13;//音頻解碼 public static final int INFO_Record_Audio = 20;//錄音 6、 發(fā)起直播詳解

17、 用戶使用VhallSDK發(fā)起直播需要首先了解幾個(gè)重要的類 LiveParam 直播中所需的重要參數(shù)〔這些參數(shù)會(huì)被傳入底層,錯(cuò)誤的參數(shù)會(huì)讓Activity報(bào)錯(cuò),目前默認(rèn)使用分辨率 640*480 更高的分辨率暫不支持〕 ConnectionChangeReceiver 用來檢測(cè)網(wǎng)絡(luò)變化 定義的一些常量 public static final int NET_ERROR = 0; public static final int NET_UNKNOWN = 1; public static final int NET_2G3G = 2; public static fin

18、al int NET_WIFI = 3; 第一步初始化直播信息 創(chuàng)立Activity ,初始化自定義view CameraNewView , 此時(shí)的CameraNewView被創(chuàng)立,開啟PreviewCallback 回調(diào),實(shí)現(xiàn)onPreviewFram(),獲取Camera采集的每一幀的數(shù)據(jù),將此數(shù)據(jù)傳遞底層處理 mCameraView = (CameraNewView) this.findViewById(R.id.cameraview); mCameraView.init(param, this, new RelativeLayout.LayoutParams(0, 0));

19、mCameraView.startPublish() // 此方法須直播回調(diào)中返回OK_PublishConnect才能調(diào)用 此處代碼必須添加 NativeLive.CreateVinnyLive(); // 創(chuàng)立VinnyLive對(duì)象 LiveObs.setCallback(mLiveCallBack); // 設(shè)置直播回調(diào) NativeLive.EnableDebug(true); // 是否翻開Debug模式〔會(huì)打印日志〕 NativeLive.AddObs(); //添加直播的監(jiān)聽 第二步創(chuàng)立button ,開啟直播。 這時(shí)調(diào)用底層方

20、法,連接推流地址,需要傳遞一個(gè)參數(shù) Path , Path為流的地址。判斷這個(gè)方法,如果返回的是0 ,則連接成功,返回非0,則連接失敗 NativeLive.StartPublish〔path〕 // 連接推流地址 第三步處理直播時(shí)的回調(diào) 當(dāng)直播成功之后,處理直播時(shí)時(shí)返回的信息,詳細(xì)方法可以參考直播過程的回調(diào) LiveCallback , 處理方案根據(jù)各自需求自行處理。 第四步停頓直播 CameraView.stopPublish(); NativeLive.StopPublish() 7、 RTMP觀看直播詳解 第一步初始化PlayView AudioPlay

21、 playView 初始化時(shí)需要傳入GLSurfaceView , 使用它需要用戶自定義一個(gè)渲染器〔render〕不過這里在初始化時(shí)已經(jīng)定義好,用戶可以直接使用 mPlayView = new PlayView(glSurfaceview); mPlayView.init(width , height) // 傳入初始化的寬高; 此處代碼必須添加 NativeLive.CreateVinnyLive(); // 創(chuàng)立VinnyLive對(duì)象 LiveObs.setCallback(mLiveCallBack); // 設(shè)置直播回調(diào) NativeLive.EnableDe

22、bug(true); // 是否翻開Debug模式〔會(huì)打印日志〕 NativeLive.AddObs(); //添加直播的監(jiān)聽 獲取用戶的活動(dòng)ID〔此ID需要在PC上取得〕, 請(qǐng)求ZReqEngine.watch(id , APP_KEY , APP_SECRET_KEY , name , email , password , new ReqCallback()) param id // 活動(dòng)ID必傳 param APP_KEY // app_key param APP_SECRET_KEY // app_secret_key param

23、 name // 必傳 param email // 必傳且保證唯一性 param password // 活動(dòng)如果有K值需要傳 callback ReqCallback // 傳入回調(diào)獲取返回的參數(shù) 請(qǐng)求成功之后,會(huì)在ReqCallback OnSuccess()返回Json參數(shù)。 result rtmp_video // rtmp觀看直播地址 result video // hls 觀看直播回放地址 result status // 當(dāng)前播放狀態(tài) result msg_server // 建立參會(huì) result m

24、sg_token // 建立參會(huì) 請(qǐng)求失敗之后,會(huì)在ReqCallback OnFail()返回信息,直接打印即可 建立參會(huì),參會(huì)建立成功,可以統(tǒng)計(jì)參會(huì)人數(shù)。 ZReqEngine.Attend attend = new ZReqEngine().new Attend(msg_server, msg_token); 第二步創(chuàng)立button 開場(chǎng)觀看 將之前獲取的觀看地址傳入當(dāng)前方法 Natiive.StarRecv(path) // 連接承受地址 0則連接成功,非0則連接失敗 第三步處理直播時(shí)的回調(diào) 這時(shí)會(huì)用到LiveCallback 中的方法 public

25、void notifyVideoData(byte[] data) //得到正在直播的視頻數(shù)據(jù) 這時(shí)調(diào)用UpdateScreenAll() , 將取得的視頻信息傳給PlayView mPlayView.UpdateScreenAll(data) public int notifyAudioData(byte[] data, int size) //得到正在直播的音頻數(shù)據(jù) 這時(shí)調(diào)用play() , 將取得的視頻信息傳給AudioPlay 備注 : notifyEvent() 依然需要調(diào)用 第四步停頓觀看 NativeLive.StopRecv() stopAudioPl

26、ay attend.disAttend(); // 關(guān)閉參會(huì) 8、 HLS觀看直播及HLS觀看回放 初始化 VhallHlsPlayer ,實(shí)現(xiàn)VhallHLSPlayer.Listener 需要用戶設(shè)置SurfaceView String userAgent = Util.getUserAgent(this, "VhallAPP"); mMediaPlayer = new VhallHlsPlayer(new HlsRendererBuilder(this, userAgent, path)); // 這里需要傳入地址 mMediaPlayer.addListene

27、r(mVhallPlayerListener); mMediaPlayer.setSurface(Surface); // 設(shè)置SurfaceView mMediaPlayer.setPlayWhenReady〔true〕 // 為true的時(shí)候開場(chǎng)播放 實(shí)現(xiàn)VhallHLSPlayer.Listener 所需實(shí)現(xiàn)的方法如下 public void onStateChanged(boolean playWhenReady, int playbackState) {} // 當(dāng)播放狀態(tài)發(fā)生改變的時(shí)候 public void onError(E*ception e) {

28、} // 播放錯(cuò)誤的時(shí)候 public void onVideoSizeChanged(int width, int height, int unappliedRotationDegrees,float pi*elWidthHeightRatio) {} // Video尺寸發(fā)生改變的時(shí)候 獲取播放地址之前需要先獲取用戶的活動(dòng)ID〔通過效勞器接口獲取〕 請(qǐng)求ZReqEngine.watch(id , APP_KEY , APP_SECRET_KEY , name , email , password , new ReqCallback()) param id //

29、 活動(dòng)ID必傳 param APP_KEY // app_key param APP_SECRET_KEY // app_secret_key param name // 必傳,參會(huì)人員,用于統(tǒng)計(jì) param email // 必傳且保證唯一性,參會(huì)人員,用于統(tǒng)計(jì),并做為用戶的唯一標(biāo)識(shí) param password // 可選,活動(dòng)如果有K值需要傳 callback ReqCallback // 傳入回調(diào)獲取返回的參數(shù) 請(qǐng)求成功之后,會(huì)在ReqCallback OnSuccess()返回Json參數(shù) result rtmp_vid

30、eo // rtmp觀看直播地址 result video // hls 觀看直播回放地址 result status // 當(dāng)前播放狀態(tài) result msg_server // 建立參會(huì) result msg_token // 建立參會(huì) 請(qǐng)求失敗之后,會(huì)在ReqCallback OnFail()返回信息,直接打印即可 建立Socket連接參會(huì),建立成功后,可以統(tǒng)計(jì)參會(huì)人數(shù)。 ZReqEngine.Attend attend = new ZReqEngine().new Attend(msg_server, msg_token);

31、 9、 支持文檔演示 當(dāng)直播活動(dòng)類型為“視頻+文檔〞或“音頻+文檔〞時(shí),通過以下方法可集成觀看,文檔會(huì)與視頻或音頻播放同步。 public class ClassName implements ZReqEngine.FlashMsgListener //觀看直播頁面實(shí)現(xiàn)此接口用于處理文檔翻頁消息 ZReqEngine.Attend attend;// 參會(huì)用于統(tǒng)計(jì)參與人數(shù)接收文檔聊天等即時(shí)消息 attend = new ZReqEngine().new Attend(msg_server, msg_token); attend.setFlashMsgListener(this

32、);//設(shè)置文檔翻頁消息接口 attend.attend();//參會(huì)參會(huì)后可承受文檔翻頁消息 Override public void onFlash(String flashMsg) { //當(dāng)直播文檔翻頁時(shí),通過此回調(diào)處理消息,flashMsg為json數(shù)據(jù) //具體處理請(qǐng)看demo } attend.disAttend(); //退出觀看時(shí)取消參會(huì) 五、 DEMO簡(jiǎn)介 1、 DEMO簡(jiǎn)介 DEMO只針對(duì)核心功能進(jìn)展演示,不包括UI界面設(shè)計(jì)。 2、 主要測(cè)試參數(shù)說明: 1〕活動(dòng)ID:指的是客戶創(chuàng)立的一個(gè)直播活動(dòng)的唯一標(biāo)識(shí),Demo測(cè)試時(shí)可從e.vhall.

33、的控制臺(tái)頁面上獲取到2)Token:Demo測(cè)試時(shí)可從頁面調(diào)用接口獲取到,有效期為24小時(shí)3〕碼率設(shè)置:主要用于視頻編碼設(shè)置,碼率與視頻的質(zhì)量成正比,默認(rèn)值300,單位Kbps 4〕緩沖時(shí)間:延時(shí)觀看時(shí)間5〕分辨率:640*480 6〕K值:默認(rèn)為空,指的是控制直播觀看權(quán)限的參數(shù),具體使用說明參考 3、 客戶Server端需提供應(yīng)APP的信息 客戶Server端需要提供如下信息:1〕Id:通過客戶Server端接口獲取到,此接口需調(diào)用VHALL接口獲取。2)AccessToken:通過客戶Server端接口獲取到,此接口需調(diào)用VHALL接口獲取。 六、 第三方K值認(rèn)證 觀看直播、觀

34、看回放的權(quán)限控制,支持使用客戶的權(quán)限驗(yàn)證邏輯。 1、 認(rèn)證流程 2、 開啟設(shè)置 1〕全局設(shè)置:針對(duì)所有的活動(dòng)配置生效,如果針對(duì)單個(gè)活動(dòng)再做配置,以單個(gè)活動(dòng)配置為最終配置。通過接口調(diào)用設(shè)置 webinar/whole-auth-url 全局配置第三方K值驗(yàn)證URL 2) 針對(duì)*個(gè)活動(dòng)的配置方式一:通過頁面配置,數(shù)字表示自己下的活動(dòng)id 3〕針對(duì)*個(gè)活動(dòng)的配置方式二:通過接口(webinar/create或webinar/update)設(shè)置 3、 K值使用 1) 網(wǎng)頁嵌入或SDK里的調(diào)用方法,請(qǐng)務(wù)必帶上k參數(shù),如果這個(gè)參數(shù)為空或者沒有這個(gè)參數(shù),則視為認(rèn)證失敗 l 網(wǎng)頁嵌入地址類似:

35、 l SDK里的調(diào)用方法,需要傳遞3個(gè)參數(shù)name,email,pass email:可選參數(shù),如果不填寫系統(tǒng)會(huì)隨機(jī)生成地址。由于email自身的唯一性,我們推薦使用email來作為唯一標(biāo)識(shí)有效用戶的字段。對(duì)于第三方自有用戶數(shù)據(jù)的系統(tǒng),也可以使用一些特征ID作為此標(biāo)識(shí),請(qǐng)以email的格式組織,比方在第三方系統(tǒng)中,用戶ID為123456,可在其后添加一個(gè)domain.,組成123456domain.形式的email地址。 name: 可選參數(shù),如果不填寫系統(tǒng)會(huì)隨機(jī)生成。此字段表示用戶昵稱、或其他有意義的字符串??梢詾橹形模仨殲閁TF-8,且經(jīng)過URL編碼(urlencode)。 k

36、:可選參數(shù),此字段為了提供應(yīng)第三方可以根據(jù)自己的權(quán)限系統(tǒng),驗(yàn)證客戶是否可訪問直播地址。 ZReqEngine.watch(id , APP_KEY , APP_SECRET_KEY , name , email , password , new ReqCallback()) param id // 活動(dòng)ID必傳 param APP_KEY // app_key param APP_SECRET_KEY // app_secret_key param name // 必傳 param email // 必傳且保證唯一性 param pas

37、sword // 活動(dòng)如果有K值需要傳 callback ReqCallback // 傳入回調(diào)獲取返回的參數(shù) 觀看直播 (僅HLS可用) ZReqEngine.watch(id , APP_KEY , APP_SECRET_KEY , name , email , password , new ReqCallback()) param id // 活動(dòng)ID必傳 param APP_KEY // app_key param APP_SECRET_KEY // app_secret_key param name //

38、 必傳,參會(huì)人員,用于統(tǒng)計(jì) param email // 必傳且保證唯一性,參會(huì)人員,用于統(tǒng)計(jì),并做為用戶的唯一標(biāo)識(shí) param password // 可選,活動(dòng)如果有K值需要傳 callback ReqCallback // 傳入回調(diào)獲取返回的參數(shù) 2〕 Vhall系統(tǒng)收到用戶的接口訪問請(qǐng)求后,會(huì)向第三方認(rèn)證URL(auth_url)發(fā)送HTTP POST請(qǐng)求,同時(shí)將email和k值作為POST數(shù)據(jù)提交給第三方認(rèn)證。由第三方系統(tǒng)驗(yàn)證k值的合法性。如果認(rèn)證通過,第三方認(rèn)證URL(auth_url)返回字符串pass,否則的返回fail 注:需要確保您

39、的回調(diào)地址支持 multipart/form-data 方式接收 post 數(shù)據(jù)。 3〕 Vhall 系統(tǒng)根據(jù)第三方認(rèn)證URL返回值判斷認(rèn)證是否成功。只有收到pass,才能認(rèn)定為驗(yàn)證成功,否則一律跳轉(zhuǎn)到指定的認(rèn)證失敗 URL,或者提示'非法訪問' 4〕參數(shù)特征 URL請(qǐng)求很容易被探測(cè)截獲,這就要求第三方系統(tǒng)生成的K值必須有以下特征: l 唯一性:每次調(diào)用接口必須產(chǎn)生不同的K值 l 時(shí)效性:設(shè)定一個(gè)時(shí)間圍,超時(shí)的K值即失效。 l 如果包含有第三方系統(tǒng)部信息,必須加密和混淆過。 5〕建議的K值實(shí)現(xiàn) 第三方系統(tǒng)可以考慮K值元素包括:用戶ID、Vhall直播ID、時(shí)間戳〔1970-01-01至今的秒數(shù)〕元素組合后加密后,使用Base64或者h(yuǎn)e* 匹配成URL可識(shí)別編碼。K值在第三方系統(tǒng)中持久化或放在Cache中 回調(diào)驗(yàn)證時(shí),根據(jù)時(shí)間戳判斷是否在設(shè)定時(shí)間有效 驗(yàn)證完畢,假設(shè)認(rèn)證通過,則從DB或Cache中移除K值 DB或Cache建議有時(shí)效性控制,自動(dòng)失效或定期清理過期數(shù)據(jù) . >

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!