這是一個(gè)警告,你把 ‘不校驗(yàn)安全域名、web-view 域名、TLS 版本以及 HTTPS 證書’ 這個(gè)選項(xiàng)去掉 就不會(huì)出現(xiàn)這個(gè)情況了,如果你的請(qǐng)求域名已經(jīng)成功備案了的話,應(yīng)該不會(huì)報(bào)錯(cuò)
剛提問就被我自己解決了,真尷尬
sleep 2秒就好了
執(zhí)行的太快,alter還沒出來,selenium就去執(zhí)行了
我想說別有page了,用image吧
不可以這么寫哦,可以這樣:
v-if="[2,1,-1].includes(item.casestatus)"![圖片上傳中...] 你圖片呢?
一般處理是頁(yè)面做成設(shè)計(jì)稿的二分之一,比如一個(gè)div設(shè)計(jì)稿寬高是100200,那么你寫的時(shí)候就是50100,但是如果是滿屏寬度,最好不要寫死寬度,可以用百分比來適配。字體也基本上是設(shè)計(jì)稿的二分之一,但是有時(shí)候會(huì)有點(diǎn)偏小,一般我們處理的時(shí)候是設(shè)計(jì)稿的1/2+2px。
iframe的data-src并不是視頻的url
你在新頁(yè)面打開連接可以看到視頻是個(gè)swf,它的url為 http://imgcache.qq.com/tencentvideo_v1/player/TPout.swf?max_age=86400&v=20140714
findDOMNode(this.refs.idInput)
應(yīng)該有兩塊,一塊輸入框,一塊div,div蓋在文本框上面,輸入框內(nèi)容變化后,div里面的內(nèi)容自動(dòng)更新
這里提示的是你的PHP版本過低,語(yǔ)法不支持,通常在PHP5.4以下的數(shù)組寫法是:
$arr = array(
'a' => 'hello'
);
php5.4及以上,我們可以這么寫:
$arr = [
'a' => 'hello'
];
所以這里報(bào)的是數(shù)組語(yǔ)法錯(cuò)誤,把PHP版本切換為PHP5.5就可以了。
找到了一個(gè)好用的免費(fèi)開源JS庫(kù)——streamedian
當(dāng)當(dāng)當(dāng)~上鏈接:https://streamedian.com
介紹中講到,Multifunctional HTML5 RTSP streaming video player over WebSocket
就是說,利用websocket實(shí)現(xiàn)多功能的H5的rtsp視頻流播放器
這里是使用文檔:https://streamedian.com/docs/
對(duì)于對(duì)websocket、linux、服務(wù)器、甚至英文一知半解(一竅不通)并看了文檔也不理解的同學(xué),請(qǐng)繼續(xù)看手把手中文教程:
首先我們理解一下個(gè)中原理:
目標(biāo):在你的瀏覽器(browser)上播放rtsp視頻流
問題:然而,H5的標(biāo)簽<video>不支持這樣的播放
方案:這里利用我們的streamedian在你的服務(wù)端開啟一個(gè)websocket代理(proxy),負(fù)責(zé)接收rtsp流,并轉(zhuǎn)播給你的瀏覽器客戶端,streamedian在客戶端利用中間件(Media Sources Extensions)將經(jīng)過轉(zhuǎn)播收到的RTP H264和AAC包轉(zhuǎn)化成MP4包,“喂給“<video>進(jìn)行播放
下面拿到streamedian的code來感受一下:
方法一:通過官網(wǎng)下載
可能不是最新版,streamedian團(tuán)隊(duì)還在不斷地修復(fù)bug中,建議用方法二、三下載最新更新的版本
進(jìn)入https://streamedian.com 完成注冊(cè)并登錄
可以看到最上面紅框標(biāo)注的是我們需要的客戶端和服務(wù)端的JS程序;
針對(duì)客戶端,如果你使用H5的原生播放器<video>標(biāo)簽,下載Download player即可,此外還提供了代替版本————結(jié)合非原生H5播放器的clappr integration、videojs integration、Flowerplayer integration可供選擇。這里我只下載了Download player
針對(duì)服務(wù)端,下載proxy,這里的.rpm和.deb是兩種格式,選擇其一下載,我這里用的ubuntu,.deb更適用,點(diǎn)擊下載
接下來是對(duì)我們使用的免費(fèi)版本streamedian的特性描述;
在Domain欄里。你需要輸入你所使用的客戶端的域名或IP,Add之后,點(diǎn)擊Download license。保存好這個(gè)license后面會(huì)用到,后面會(huì)解釋為什么要在license中明確特定的客戶端域名
方法三:從git上拉下來
npm install git://github.com/Streamedian/html5_rtsp_player.git
方法二:下載git的壓縮包
梳理一下,我們現(xiàn)在下載了什么呢?客戶端JS streamedian,服務(wù)端proxy streamedian_proxy.deb,一個(gè)licsense wsp.lic
將streamedian_proxy.deb和wsp.lic分別上傳至服務(wù)器,并在streamedian_proxy.deb根目錄下sudo dpkg -i streamedian_proxy.deb #安裝streamedian_proxy.deb軟件包(其中-i等價(jià)于--install)
安裝好后會(huì)生成/etc/ws_rtsp.ini,進(jìn)入這個(gè)路徑,利用vim進(jìn)行配置,這里我們只要設(shè)置general,其中port就是你的服務(wù)端轉(zhuǎn)播服務(wù)的端口,liscense_path則是你上傳的wsp.lic的絕對(duì)路徑,PRO version的參數(shù)可以不進(jìn)行修改
配置好端,可以用service ws_rtsp start命令啟動(dòng)該服務(wù),那么就在后端相應(yīng)端口建立起了一個(gè)將rtsp轉(zhuǎn)播服務(wù)。至此服務(wù)端已經(jīng)配置好,只要前端把rtsp地址通過socket發(fā)送給服務(wù)端,就可收到rtsp流的socket包了
service ws_rtsp stop命令可以用于停止該服務(wù),ps -aux|grep ws_rtsp命令可以用于查詢?cè)摲?wù)進(jìn)程的運(yùn)行情況
用Vs Code打開下載好的streamedian
終端運(yùn)行npm install下載依賴
終端運(yùn)行npm install --global rollup這里我們安裝的的rollup是一個(gè)JS模塊打包工具,后面會(huì)用到
接下來打開rollup.config.js,其中的entry配置了源文件,target則指定了打包生成的目標(biāo)文件的目錄及文件名。終端運(yùn)行rollup -c,可以看到在dist目錄下打包生成了目標(biāo)文件streamedian.js
至此我們的客戶端工作完成一半,客戶端的頁(yè)面在哪里呢?下面我們來做一個(gè)最簡(jiǎn)單的頁(yè)面,這里以文件中的index.html為例
可以看到<script>標(biāo)簽中引用了我們打包好的streamedian.js
引用了<video>標(biāo)簽播放rtsp視頻
<source>中指定了rtsp流源,rtsp://184.72.239.149/vod/mp4:BigBuckBunny_175k.mov是一個(gè)穩(wěn)定的可用于測(cè)試的源
socket的參數(shù)則是我們運(yùn)行的rtsp流轉(zhuǎn)播服務(wù)器運(yùn)行url,格式為ws://服務(wù)器IP:端口號(hào),可以看到這里的端口號(hào)就是之前配置好的1104
現(xiàn)在我們?cè)跒g覽器中打開index.html,可是并沒有視頻顯示!我的理解是,前期我們?cè)趌icense中設(shè)置過客戶端的IP或域名,這意味對(duì)服務(wù)端來說,只對(duì)我們制定的客戶端進(jìn)行流轉(zhuǎn)播,因此還差一步
把index.html及streamedian.js放在同一目錄下,并上傳至制定的客戶端服務(wù)器
大功告成~~
WEBstorm應(yīng)該也有相關(guān)配置吧? 搜一下呢
js的所有異步時(shí)間都不是精確的。
觀察一下可以看到每次都不是間隔1000毫秒,
一般的做法是儲(chǔ)存下來diff數(shù)值,然后每次循環(huán) 從diff中減去period
猜的:
A用的是
<link href="favicon.ico" rel="icon">
或者
<link href="./favicon.ico" rel="icon">
這個(gè)路徑可能根據(jù)當(dāng)前頁(yè)面的路徑動(dòng)態(tài)變化
B用的是
<link href="/favicon.ico" rel="icon">用Aggregation吧,很好實(shí)現(xiàn)。你這樣得查n次,用aggregation只用一次查出所有。以下是shell示例(并不太熟悉mongoose...)
let department = []
db.stations.aggregate([
{$group: {_id: "$dept", count: {$sum: 1}}}
]).forEach(doc => {
department.push(doc.count);
});是上傳到阿里云服務(wù)器嗎 我反正是沒遇到過這種問題 除非你自己壓縮
1.你的html是動(dòng)態(tài)添加的,那么一樣可以在dom動(dòng)態(tài)添加之后再用addEventListener注冊(cè)事件
2.jquery的on有第三個(gè)參數(shù)$('.wrapper').on('click', function (e) { e.preventDefault(); }, false)
我之前的做法是wx.config放在main.js里執(zhí)行,然后存相應(yīng)的數(shù)據(jù)到Vuex,反正這樣做微信支付是沒什么問題的。
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國(guó)IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國(guó)家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國(guó)一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國(guó)成功上市,融資1
北大課工場(chǎng)是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國(guó)家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國(guó)制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級(jí)產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國(guó)職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫(kù),具有快速界面開發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁(yè)制作和網(wǎng)頁(yè)游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國(guó)Software AG 技術(shù)顧問,美國(guó)Dachieve 系統(tǒng)架構(gòu)師,美國(guó)AngelEngineers Inc. 系統(tǒng)架構(gòu)師。