利用PHP和AJAX創(chuàng)建RSS聚合器(一)
Jun 08, 2016 pm 05:33 PM想象使用一個(gè)簡(jiǎn)單HTML文件來把一個(gè)請(qǐng)求發(fā)送到一個(gè)服務(wù)器端腳本,收到一個(gè)基于該請(qǐng)求的定制XML文件,然后把它顯示給用戶而幾乎不需要刷新瀏覽器!本文作者將同你一起探討怎樣在普通Web應(yīng)用程序中聯(lián)合PHP和AJAX技術(shù)來創(chuàng)建實(shí)時(shí)的數(shù)據(jù)傳輸而不需要進(jìn)行瀏覽器刷新。
盡管本文所使用的是PHP語言,但是請(qǐng)記住任何服務(wù)器端語言都會(huì)正常工作。為了理解本文,我假定你基本理解JavaScript和PHP或一類似服務(wù)器端語言。
本文示例使用AJAX來把一請(qǐng)求從一個(gè)RSS饋送發(fā)送到一定制的PHP對(duì)象。該P(yáng)HP對(duì)象復(fù)制一份在本地服務(wù)器上的該饋送并返回這一路徑。該請(qǐng)求對(duì)象收到這一路徑,分析它,并且把數(shù)據(jù)以HTML形式顯示給用戶。這聽起來涉及很多步驟,其實(shí)它僅由4個(gè)小文件組成。之所以使用了4個(gè)小文件,是為了平衡它們各自特定的力量而使整個(gè)系統(tǒng)的處理極富效率性。
我想,有些讀者可能會(huì)問,為什么你要?jiǎng)?chuàng)建在本地服務(wù)器上的饋送的一個(gè)副本而不是簡(jiǎn)單分析最原始的饋送。原因是,這樣以來可以答應(yīng)繞過XML HTTP Request對(duì)象所強(qiáng)加的跨域限制。后面,我還會(huì)解釋怎樣創(chuàng)建這個(gè)定制的PHP對(duì)象;但是首先,讓我們從表單創(chuàng)建開始。
創(chuàng)建發(fā)出請(qǐng)求的表單
你要做的第一事情是,在你的HTML的head標(biāo)簽之間包括你可能想使用的JavaScript和任何CSS文件。我包括了一個(gè)式樣表來實(shí)現(xiàn)該聚合器的最后布局并用一個(gè)JavaScript文件來發(fā)出請(qǐng)求和進(jìn)行饋送分析:
下一步,創(chuàng)建一個(gè)表單,它針對(duì)你所選擇的一個(gè)RSS饋送發(fā)出請(qǐng)求。我創(chuàng)建的表單只包括一個(gè)輸入字段和一個(gè)提交該請(qǐng)求的按鈕。該請(qǐng)求的查詢是一個(gè)字符串,它由饋送輸入值和一個(gè)將在服務(wù)器端被校驗(yàn)的口令字組成;作為一個(gè)示例,我使用了下面形式:
"password=mypassword
該代碼在每次頁面加載之時(shí)發(fā)出一次請(qǐng)求;因此,假如頁面被刷新,現(xiàn)有的在該輸入域中的饋送串將在頁面加載時(shí)被請(qǐng)求。下面是一個(gè)表單數(shù)據(jù)的示例,連同一些div標(biāo)簽用來顯示已分析的饋送的特定結(jié)點(diǎn):
我所創(chuàng)建的這三個(gè)div標(biāo)簽是logo,copy和details,其中每一個(gè)都在布局樣式表中有一個(gè)與之相關(guān)聯(lián)的樣式。當(dāng)我們分析饋送時(shí)將會(huì)用到它們,但是我們首先需要能夠存取我們所請(qǐng)求的饋送。這可以使用我前面所提到的PHP對(duì)象來完成。

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

??? ??











?? ????? ??? ??? ??? ? Huawei ???? ???? ???. ? ? Huawei GT3pro? GT4? ?? ?? ?? ?????. ? ??? ???? ????? ???? ????. Huawei GT3pro? GT4? ???? ?????? 1. ?? GT4: 46mm? 41mm, ??? ?? ?? + ????? ?? ?? + ???? ?? ?? ????. GT3pro: 46.6mm ? 42.9mm, ??? ???? ?? + ??? ??/??? ?? + ??? ? ????. 2. ??? GT4: ?? Huawei Truseen5.5+ ????? ???? ??? ? ??????. GT3pro: ECG ???, ?? ? ??? ??

WebSocket? JavaScript: ??? ???? ??? ??? ?? ?? ?? ??: ??? ??? ??? ??? ?? ??? ???? ???? ??? ???? ?? ???? ??. ??? ????? ???? ?? ?? ? ??? WebSocket? JavaScript? ?????. ? ????? ??? ???? ????? WebSocket ? JavaScript? ??? ???? ?? ??? ???? ?? ??? ??? ?????. 1. ??? ??

WebSocket ? JavaScript? ???? ??? ?? ?? ???? ???? ?? ??: ???? ?? ??? ?? ?? ??? ?? ?? ??? ??? ??? ?????. WebSocket? JavaScript? ???? ? ??? ?? ?? ???? ?? ?? ??, ???, ??? ?????? ??? ?? ??? ?? ???? ???? ?????. ? ????? WebSocket? JavaScript? ???? ??? ?? ?? ???? ???? ??? ?????.

JavaScript ? WebSocket? ???? ??? ??? ?? ???? ???? ?? ??: ???? ???? ??? ???? ?? ? ?? ?????? ??? ?? ???? ???? ??????. ??? ??? ?? ???? ???? ?? JavaScript ? WebSocket ??? ??? ? ????. WebSocket? TCP ????? ???? ?? ??? ?? ????? ?????? ?? ?? ??? ??? ??? ??? ? ????. ??? ??? ?? ?????? ???? ??? ???? ??? ??

JavaScript ? WebSocket: ???? ??? ?? ?? ??? ?? ??: ??? ?? ??? ???? ?? ??? ?? ??? ?? ?????. ??? ???? ?? ??? ?? ???? ????? ?????? ?? ???? ??? ? ?? ????? ??? ? ????. ? ????? JavaScript ? WebSocket ??? ???? ???? ??? ?? ?? ???? ???? ??? ?????. ? ????? ?? ?? ??? ?? ?? ????? ?????. ??

WebSocket? JavaScript? ???? ??? ?? ???? ???? ?? ???? ??? ???? ?? ? ?? ??? ????? ??? ?? ??? ???? ???. ???? ??? ??? ?? ???? ???? ?? ?????. ? ????? WebSocket? JavaScript? ???? ??? ?? ???? ???? ??? ???? ???? ?? ??? ?????. 1. WebSocket?? ?????? WebSocket? ?? TCP ??? ??? ?????.

JavaScript ????: HTTP ?? ??? ?? ??, ?? ?? ??? ?????. ??: ? ????? ???? ??? ?? ??? ?? ?????. ??? ??? ? ??? HTTP ?? ??? ???? ??? ?? ??? ???? ??? ?? ??? ?? ?? ??? ???? ?? ??? ????. ? ????? JavaScript? ???? HTTP ?? ??? ?? ??? ? ?? ???? ?? ??? ?????. XMLHttpRequest ??

???: JavaScript?? insertBefore() ???? DOM ??? ? ??? ???? ? ?????. ? ???? ??? ? ??? ?? ??(?, ? ??? ??? ??)?? ? ?? ?? ??? ?????.
