国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

ajax概述

Achilles / 1125人閱讀

摘要:換一臺(tái)電腦就要重新安裝。并且還需要適配不同的系統(tǒng)。提交大小幾乎沒(méi)有限制。即協(xié)議主要由請(qǐng)求和響應(yīng)組成。相反則為同步按照程序的順序,依次往下執(zhí)行,必須等上一程序執(zhí)行完成之后才能執(zhí)行下一程序,阻礙程序的執(zhí)行。

Ajax 服務(wù)器 類型

按照服務(wù)類型:文件服務(wù)器,數(shù)據(jù)庫(kù)服務(wù)器,郵件服務(wù)器,Web服務(wù)器

按照操作系統(tǒng):Linux服務(wù)器,Windows服務(wù)器

按照應(yīng)用軟件:Apache服務(wù)器,Nginx服務(wù)器,IIS服務(wù)器,Tomcat服務(wù)器,WebSphere服務(wù)器,boss服務(wù)器,Node服務(wù)器

軟件

文件服務(wù)器:Server-U,F(xiàn)ileZilla,VsFTP(File Transfer Protocol)等

數(shù)據(jù)庫(kù)服務(wù)器:oracle,mysql,SQL server,DB2,ACCESS等

郵件服務(wù)器:Postfix,Sendmail等

HTTP服務(wù)器:Apache,Nginx,IIS,Tomcat,NodeJS等

HTTP服務(wù)器

網(wǎng)站服務(wù)器,主要提供文檔(文本,圖片,視頻,音頻)瀏覽服務(wù)

可以結(jié)合某一種編程語(yǔ)言處理業(yè)務(wù)邏輯,由此進(jìn)行開(kāi)發(fā),被稱為服務(wù)端開(kāi)發(fā)

常見(jiàn)的編程語(yǔ)言有php,java,.net,Python,Ruby,Perl等

客戶端

向服務(wù)端索取服務(wù)能力的終端

以瀏覽器為環(huán)境,結(jié)合HTML,CSS,JavaScript進(jìn)行的開(kāi)發(fā)叫做前端開(kāi)發(fā)

網(wǎng)絡(luò) IP地址

32位(二進(jìn)制),查看本機(jī)IP地址:ping,ipconfig,ifconfig(Linux)

域名

IP基于數(shù)字,不方便記憶,用域名代替IP地址

DNS服務(wù)

Domain Name System:域名和IP地址相互映射的一個(gè)分布式數(shù)據(jù)庫(kù)

記錄IP地址和域名之間對(duì)應(yīng)關(guān)系的服務(wù)

優(yōu)先級(jí):本機(jī)的host優(yōu)先于DNS服務(wù)器

ipconfig、flushdns刷新DNS

客戶端將域名傳入DNS,DNS把域名轉(zhuǎn)換成IP地址返回給客戶端,之后客戶端根據(jù)IP地址發(fā)送請(qǐng)求給服務(wù)器,服務(wù)器響應(yīng),返回信息

端口

端口是計(jì)算機(jī)與外界通訊交流的出口,每個(gè)端口對(duì)應(yīng)不同的服務(wù)

查看端口占用情況:netstat-an

常見(jiàn)端口:80,8080,3306,21,22

架構(gòu) C/S結(jié)構(gòu)

Client Sever不同的服務(wù)器需要安裝不同的客戶端軟件

比如 QQ,迅雷等一系列軟件。換一臺(tái)電腦就要重新安裝。并且還需要適配不同的系統(tǒng)。不方便

B/S結(jié)構(gòu)

Broswer Sever所有的服務(wù)都可以通過(guò)瀏覽器來(lái)完成,不需要兼容操作系統(tǒng),不同客戶端都可以操作

比如百度腦圖

操作穩(wěn)定性較差,流暢度較弱

PHP 簡(jiǎn)單程序

地址欄模擬

默認(rèn)返回的內(nèi)容,瀏覽器解析成html

每句代碼必須加分號(hào)

PHP:Hypertext Preprocessor超文本預(yù)處理器

PHP語(yǔ)言的運(yùn)算符和JS一樣

變量

變量以$開(kāi)頭,由字母數(shù)字下劃線組成,不能以數(shù)字開(kāi)頭

大小寫(xiě)敏感(區(qū)分大小寫(xiě))

輸出順序是自上向下的,相當(dāng)于js中的document.write()

單引號(hào)中的內(nèi)容就是字符串

雙引號(hào)中的內(nèi)容會(huì)執(zhí)行

符后面的內(nèi)容和構(gòu)成一個(gè)變量名稱

如果前邊聲明的變量是$name=xgg;

輸出echo “$name17” 會(huì)報(bào)錯(cuò),因?yàn)檎也坏矫麨椤眓ame17”的變量

輸出echo “$name 17” 會(huì)輸出 xgg 17

數(shù)據(jù)類型

要注意索引數(shù)組和關(guān)聯(lián)數(shù)組的區(qū)別

"itcast","age"=>10);
    echo $arr["name"];
    echo $arr["age"];
?>

public相當(dāng)于JS中的全局變量

private相當(dāng)于JS中的局部變量

對(duì)象

name;
?>

null是PHP中一種特殊的數(shù)據(jù)類型,表示空值,表示為該變量設(shè)置任何值null,不區(qū)分大小寫(xiě),null和NULL一樣

運(yùn)算符&內(nèi)容輸出

echo:輸出簡(jiǎn)單數(shù)據(jù)類型,如字符串,數(shù)值。如果用echo輸出數(shù)組,只能得到類型名字,得不到內(nèi)容

print_r():輸出復(fù)雜數(shù)據(jù)類型的結(jié)構(gòu),如數(shù)組

var_dump():輸出詳細(xì)信息,如對(duì)象,數(shù)組

$arr=array("itcast","今年","10歲了");
//只能輸出簡(jiǎn)單類型
echo $arr;
//輸出詳細(xì)信息
print_r($arr);
$hello="hello";
//輸出詳細(xì)信息
var_dump($hello);
函數(shù)

PHP中有超過(guò)700個(gè)內(nèi)建函數(shù)

函數(shù)名對(duì)大小寫(xiě)不敏感

有參數(shù)一定傳,但是如果有默認(rèn)值可以不傳

表單

表單name屬性設(shè)置服務(wù)端接收所傳遞數(shù)據(jù),如果不帶name屬性就無(wú)法提交

表單action屬性設(shè)置接收數(shù)據(jù)的處理程序,表示提交的地址(后臺(tái)處理程序)

表單method屬性設(shè)置發(fā)送數(shù)據(jù)的方式,表示提交的方式

當(dāng)上傳文件時(shí)需要設(shè)置enctype=”multipart/form-data”,并且只能用post的方式上傳

遞交方式和獲取方式要對(duì)應(yīng)

$_GET,PHP的內(nèi)置變量,接收get傳值(簡(jiǎn)單數(shù)據(jù)類型)默認(rèn)提交方式(提交數(shù)據(jù)拼接到URL地址欄中)提交大小4k左右(地址欄長(zhǎng)度有限)

$_POST,PHP的內(nèi)置變量,接收post傳值(簡(jiǎn)單數(shù)據(jù)類型)數(shù)據(jù)提交到請(qǐng)求報(bào)文中(更安全)。提交大小幾乎沒(méi)有限制。

$_FILES,PHP的內(nèi)置變量,接收文件上傳(獲取文件類型)

$\_POST,$_GET獲取的都是字符串類型的數(shù)據(jù)

$_FILES獲取文件類型數(shù)據(jù)

文件導(dǎo)入

include導(dǎo)入的是HTML頁(yè)面

require導(dǎo)入的是PHP程序

傳輸協(xié)議 HTTP

HTTP(HyperText Transfer Protocol)超文本傳輸協(xié)議

HTML(HyperText Markup Language)超文本標(biāo)記語(yǔ)言

http協(xié)議是由客戶端到服務(wù)器的請(qǐng)求(request)和從服務(wù)器到客戶端的響應(yīng)(response)進(jìn)行了約束和規(guī)范。即http協(xié)議主要由請(qǐng)求和響應(yīng)組成。

常用的請(qǐng)求方法POST,GET,PUT,DELETE

GET和POST請(qǐng)求方式的差異

GET沒(méi)有請(qǐng)求主體,使用xhl.send(null)

GET可以通過(guò)在請(qǐng)求URL上添加請(qǐng)求參數(shù)

POST可以通過(guò)設(shè)置xhl.send(‘name=itcast&age=17’)

POST需要設(shè)置

GET效率更好

GET大小限制4k,POST沒(méi)有限制

請(qǐng)求和請(qǐng)求報(bào)文

由客戶端發(fā)起,規(guī)范為:請(qǐng)求行,請(qǐng)求頭,請(qǐng)求主體

請(qǐng)求行:

get方式會(huì)在地址后面拼接參數(shù)

/heima11/day02/03.form.php?username=xgg&password=1 HTTP/1.1

post方式就是簡(jiǎn)單的地址

/heima11/day02/03.form.php HTTP/1.1

請(qǐng)求頭:

Host:localhost請(qǐng)求的主機(jī)

User-Agent:很重要,包含客戶端的信息

Accept:接受的文檔MIME類型,text/html,application/xhtml+xml等內(nèi)容

Accept-Language:可接受的語(yǔ)言,zh-CN等內(nèi)容

Accept-Encoding:可接受的壓縮格式,gzip,deflate,sdch,br等內(nèi)容

Cache-Control:max-age=0控制緩存

Content-Type:application/x-www-form-urlencoded以post形式提交表單的時(shí)候,請(qǐng)求頭中會(huì)設(shè)置這一項(xiàng),以get形式提交,則沒(méi)有

Referer:從哪個(gè)URL跳轉(zhuǎn)過(guò)來(lái)的

請(qǐng)求主體:

post方式,傳遞給服務(wù)端的數(shù)據(jù)

get方式,空的

響應(yīng)和響應(yīng)報(bào)文

由服務(wù)器發(fā)起,規(guī)范為:狀態(tài)行,響應(yīng)頭,響應(yīng)主體

狀態(tài)行:

由協(xié)議版本號(hào),狀態(tài)碼和狀態(tài)信息構(gòu)成

200成功,304緩存,403權(quán)限,404未找到,500+服務(wù)端錯(cuò)誤

響應(yīng)頭:

Date:響應(yīng)時(shí)間

Server:服務(wù)器信息

Content-Length:響應(yīng)主體長(zhǎng)度

Content-Type:響應(yīng)資源的類型

響應(yīng)主體:

服務(wù)端返給客戶端的內(nèi)容

Ajax編程 異步

程序執(zhí)行時(shí)不會(huì)阻塞其他程序執(zhí)行,程序的執(zhí)行順序不依賴程序本身的書(shū)寫(xiě)順序。相反則為同步(按照程序的順序,依次往下執(zhí)行,必須等上一程序執(zhí)行完成之后才能執(zhí)行下一程序,阻礙程序的執(zhí)行)。

XMLHttpRequest
 

瀏覽器內(nèi)建對(duì)象,用于在后臺(tái)與服務(wù)器通信(交換數(shù)據(jù)),可以實(shí)現(xiàn)對(duì)網(wǎng)頁(yè)的部分更新,而不是刷新整個(gè)頁(yè)面

請(qǐng)求
Get

請(qǐng)求行數(shù)據(jù)直接加到地址欄后面

請(qǐng)求頭內(nèi)容默認(rèn)

請(qǐng)求主體為空

通過(guò)encodeURI()用來(lái)對(duì)中文參數(shù)進(jìn)行轉(zhuǎn)碼,防止亂碼

Post

請(qǐng)求行就是地址

請(qǐng)求頭需要Content-Type的設(shè)置

請(qǐng)求主體發(fā)送請(qǐng)求

響應(yīng)

readyState有五種狀態(tài)

0 請(qǐng)求未初始化

1 請(qǐng)求已經(jīng)建立,但是還沒(méi)有發(fā)送

2 請(qǐng)求已經(jīng)發(fā)送,正在處理中

3 請(qǐng)求在處理中,響應(yīng)有部分?jǐn)?shù)據(jù)可用

4 響應(yīng)已完成

服務(wù)器作出響應(yīng)需要時(shí)間,所以需要監(jiān)聽(tīng)服務(wù)器的狀態(tài)

當(dāng)readyState的狀態(tài)發(fā)生改變的時(shí)候,觸發(fā)onreadystatechange函數(shù)

XML

指的是可擴(kuò)展標(biāo)記語(yǔ)言,主要用來(lái)輸出和存儲(chǔ)數(shù)據(jù)

必須有一個(gè)根元素,可以自定義,標(biāo)簽也可以自定義

空格會(huì)被保留,所以不可有空格,不可以數(shù)字或點(diǎn)開(kāi)頭,大小寫(xiě)敏感

不可交叉嵌套

可以在標(biāo)簽里定義屬性,屬性雙引號(hào)單引號(hào)都可以(瀏覽器自動(dòng)修正成雙引號(hào))

特殊符號(hào)用實(shí)體 & gt;& lt;& nbsp;

注釋寫(xiě)法和HTML一樣,不能放在開(kāi)頭

必須閉合(雙標(biāo)簽)

xml本質(zhì)是字符串,瀏覽器在解析的時(shí)候,會(huì)按照xml格式去預(yù)覽

可以描述和傳輸復(fù)雜的數(shù)據(jù),但是解析獲取復(fù)雜并且體積大,開(kāi)發(fā)很少使用

在忽略互聯(lián)網(wǎng)速度的內(nèi)網(wǎng)還是可以用XML

銀行網(wǎng)銀系統(tǒng)中大量使用

XML是用來(lái)傳輸和存儲(chǔ)數(shù)據(jù)的,而HTML被設(shè)計(jì)用來(lái)顯示數(shù)據(jù)的

XML旨在傳輸數(shù)據(jù),HTML旨在顯示信息

php中用file_get_contents的方式獲取xml元素

header中一定要把html改成xml否則會(huì)報(bào)錯(cuò)

通過(guò)responseText獲取的內(nèi)容是字符串

通過(guò)responseXML獲取的內(nèi)容

JSON

輕量級(jí)文本數(shù)據(jù)交換格式

獨(dú)立于語(yǔ)言(每種語(yǔ)言都認(rèn)識(shí))

數(shù)據(jù)在名稱/值對(duì)中

不能寫(xiě)注釋

數(shù)據(jù)由逗號(hào)分隔(最后一個(gè)鍵值對(duì)不能帶逗號(hào))

花括號(hào)里面只有一條數(shù)據(jù)的時(shí)候,不加逗號(hào)(相當(dāng)于最后一條數(shù)據(jù))

花括號(hào)保存對(duì)象方括號(hào)保存數(shù)組

使用雙引號(hào)

json對(duì)象沒(méi)有變量

json形式的數(shù)據(jù)結(jié)尾沒(méi)有分號(hào)

json數(shù)據(jù)中的鍵必須用雙引號(hào)包括

比XML更小更快更容易解析

在數(shù)據(jù)的傳輸過(guò)程中,json以文本方式傳輸,JS操作的是json對(duì)象,所以json對(duì)象和json字符串之間需要相互轉(zhuǎn)換

JSON.parse json轉(zhuǎn)換成javascript

JSON.stringify javascript轉(zhuǎn)換成json

json_decode json轉(zhuǎn)換成php

json_encode php轉(zhuǎn)換成json

模板引擎 artTemplate 語(yǔ)法概述

模板:參照html代碼和數(shù)據(jù)綁定

script type=”text/html”不讓內(nèi)容當(dāng)做js解析執(zhí)行,在頁(yè)面中不存在

模板綁定后可以在模板內(nèi)書(shū)寫(xiě)模板語(yǔ)法

模板語(yǔ)法只能書(shū)寫(xiě)在<% %>中

使用數(shù)據(jù)的時(shí)候,如果這個(gè)數(shù)據(jù)是傳入對(duì)象的屬性,這個(gè)屬性相當(dāng)于一個(gè)模板內(nèi)可以使用的變量

模板的特殊語(yǔ)法和js一樣,模板內(nèi)部可以定義變量,使用分支循環(huán)語(yǔ)句

不能使用模板外部變量(全局變量),例如$,window,console等

默認(rèn)渲染方式是字符串:<%= %>默認(rèn)渲染方式是字符串,防止xss攻擊(cross site scripting 跨站腳本攻擊) <%=# %>默認(rèn)渲染方式是html,從后臺(tái)傳過(guò)來(lái)的數(shù)據(jù)可以是 html標(biāo)簽

簡(jiǎn)潔模板必須寫(xiě)在{{}}中

{{each model}} {{/each}}默認(rèn)索引$index 默認(rèn)值$value

{{each model as item i}} {{/each}}默認(rèn)索引item值 i索引

{{if}}{{else}}{{/if}}分支

簡(jiǎn)介模板不能定義變量

模板引擎作用,渲染工具(把數(shù)據(jù)動(dòng)態(tài)生成html格式的代碼渲染在頁(yè)面當(dāng)中)

國(guó)外:handlebars,mustache

國(guó)內(nèi):artTemplate最好,baiduTemplate,velocity

使用步驟:準(zhǔn)備數(shù)據(jù),準(zhǔn)備模板,數(shù)據(jù)和模板綁定返回html格式的字符串,渲染頁(yè)面

瀑布流加載方法

window.onload和$(function)的區(qū)別

window.onload是將文檔中所有的元素都加載出來(lái)

$(function() {})是將文檔中主要元素加載出來(lái)

圖片還沒(méi)有加載出來(lái)的時(shí)候,下面如果排新的子容器,就會(huì)把上面的圖片蓋住,出現(xiàn)圖片黏連的情況

兩種解決方案:

需要用window.onload,先把圖片都加載出來(lái),防止這種情況發(fā)生

限定圖片的尺寸,圖片沒(méi)有加載出來(lái)的時(shí)候,尺寸也可以先占空間,尺寸可以由后臺(tái)數(shù)據(jù)傳到前端,根據(jù)子容器的比例,算出圖片的大小再進(jìn)行設(shè)置

一部分瀏覽器有兼容問(wèn)題,在動(dòng)態(tài)渲染20個(gè)容器的時(shí)候,選擇器可能會(huì)失效

跨域 跨域&同源

同源:協(xié)議域名端口號(hào)一樣

瀏覽器一般會(huì)阻止跨域的操作(同源策略)

具有跨域能力的標(biāo)簽,不具有操作跨域元素的能力

link可以請(qǐng)求跨域的數(shù)據(jù),不能取到內(nèi)容

script通過(guò)src的請(qǐng)求,都是get請(qǐng)求,后臺(tái)返回的內(nèi)容引入進(jìn)來(lái),不管返回的是什么類型,都會(huì)被解析成JS并執(zhí)行,但是可能會(huì)報(bào)錯(cuò)(不符合JS語(yǔ)法)

iframe能對(duì)同源文檔中的元素進(jìn)行操作,實(shí)際是在頁(yè)面中開(kāi)了一個(gè)內(nèi)嵌的頁(yè)面

domain

手動(dòng)設(shè)置頂級(jí)域名,跨域可以互相操作,但是兩個(gè)域的頂級(jí)域名必須相同,并且兩個(gè)域需要同時(shí)設(shè)置document.domain=’頂級(jí)域名’

其他

hash、name、postMessage

JSONP

xhr無(wú)法進(jìn)行跨域請(qǐng)求

JSONP原理:動(dòng)態(tài)創(chuàng)建script標(biāo)簽,通過(guò)src屬性發(fā)送跨域請(qǐng)求,服務(wù)端返回一個(gè)預(yù)先定義好的javascript函數(shù)的調(diào)用

發(fā)送之前必須顯示先聲明一個(gè)函數(shù),函數(shù)名字與參與傳遞的名字要一致

核心是動(dòng)態(tài)添加script標(biāo)簽來(lái)調(diào)用服務(wù)器提供的

遵循js語(yǔ)法,定義一個(gè)變量,根據(jù)變量獲取后臺(tái)數(shù)據(jù)

前端定義一個(gè)函數(shù)success,后臺(tái)返回一個(gè)函數(shù) callback=success,理解成成功回調(diào)函數(shù)

可以傳復(fù)雜數(shù)據(jù),通過(guò)拼接JSON格式的數(shù)據(jù),返回的就是JSON對(duì)象

一端維護(hù),callback值是前后端的約定,jQuery會(huì)自動(dòng)生成callback

因?yàn)槭莋et請(qǐng)求,所以只能在地址欄拼接數(shù)據(jù)

JSONP的jQuery語(yǔ)法,與JSON的jQuery的語(yǔ)法比較,強(qiáng)制類型轉(zhuǎn)換改成jsonp就可以了

cors

如果傳輸?shù)臄?shù)據(jù)量比較大,那么需要用post的方式進(jìn)行傳輸,就不能再使用JSONP,應(yīng)該使用cors

使用方法:添加屬性,允許某個(gè)域名訪問(wèn)。弊端:存在瀏覽器兼容問(wèn)題

*表示通配符,表示所有網(wǎng)站都可以訪問(wèn),不安全

可以加具體的域名,比如http://yueban.com

jQuery提供的方法
$.ajax({
  //以何種方式進(jìn)行傳輸
  type:"post",
  //地址
  url:"../api/removeUser.php",
  //傳輸?shù)臄?shù)據(jù)
  data:{id:id},
  //傳輸數(shù)據(jù)的類型,默認(rèn)是json,有jsonp形式
  dataType:"json",
  //發(fā)送數(shù)據(jù)之前的函數(shù)
  beforeSend:function(){
          $btn.addClass("btn-loading")
  },
  //成功之后的函數(shù),可以傳入數(shù)據(jù)
  success:function(data){
        $btn.removeClass("btn-loading");
        if(data.status=="ok"){
        $deletModal.modal("hide");
          render();
    }
  }
})

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/97374.html

相關(guān)文章

  • 再也不學(xué)AJAX了?。ㄒ唬?em>AJAX概述

    摘要:需要注意的是,并不是的替代品,兩者各自有其適應(yīng)的場(chǎng)景。但為了方便交流,我們通常將獲取資源的一方稱為客戶端主要的工具是瀏覽器,而將派發(fā)資源的一方稱為服務(wù)端又稱為服務(wù)器。它可以幫助我們?yōu)橹蟾拍罴?xì)節(jié)的學(xué)習(xí)打下良好基礎(chǔ)。 再也不學(xué)AJAX了是一個(gè)與AJAX主題相關(guān)的文章系列,包含以下三個(gè)部分的內(nèi)容: AJAX概述:主要回答AJAX是什么這個(gè)問(wèn)題; 使用AJAX:介紹如何通過(guò)JavaSc...

    neu 評(píng)論0 收藏0
  • JavaScript考點(diǎn)之一,AJAX總結(jié)(一),AJAX概述

    摘要:即同步請(qǐng)求,瀏覽器需要等待服務(wù)器處理請(qǐng)求,導(dǎo)致了瀏覽器端的阻塞。這使得應(yīng)用程序更為迅捷地回應(yīng)用戶動(dòng)作,并避免了在網(wǎng)絡(luò)上發(fā)送那些沒(méi)有改變的信息。引擎在客戶端運(yùn)行,承擔(dān)了一部分本來(lái)由服務(wù)器承擔(dān)的工作,從而減少了大用戶量下的服務(wù)器負(fù)載。 前言 博主博客:Stillwater的博客知乎專欄:前端汪汪本文為作者原創(chuàng)轉(zhuǎn)載請(qǐng)注明出處: http://hiztx.top/2017/01/11/a......

    ermaoL 評(píng)論0 收藏0
  • 異步操作(一)概述

    摘要:回調(diào)函數(shù)指定了下一步操作。異步操作的流程控制參數(shù)為秒后返回結(jié)果上面代碼的函數(shù)是一個(gè)異步任務(wù),非常耗時(shí),每次執(zhí)行需要秒才能完成,然后再調(diào)用回調(diào)函數(shù)。 單線程模型同步任務(wù)和異步任務(wù)任務(wù)隊(duì)列和事件循環(huán)異步操作的模式回調(diào)函數(shù)事件監(jiān)聽(tīng)發(fā)布/訂閱異步操作的流程控制串行執(zhí)行并行執(zhí)行并行與串行的結(jié)合 1.單線程模型指的是js只在線程運(yùn)行,一個(gè)時(shí)間執(zhí)行一個(gè)任務(wù),其他任務(wù)排隊(duì)。事實(shí)上是一個(gè)運(yùn)行腳本的主線程...

    wemall 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<