精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Java Socket應答與HTTP服務器的瓜葛

開發 后端
Java Socket應答需要我們不斷的學習,在學習的過程中我們需要掌握很多的東西。下面我們就來看看有關Java Socket應答的服務器代碼配置。

Java Socket應答一直伴隨著我們的編程生活,在不斷的發展中有很多知識需要我們學習。下面我們就先來看看有關Java Socket應答的代碼,有點長,但是看下去就會讓你豁然開朗。

HTTP/1.1表示這個HTTP服務器是1.1版,200是服務器對客戶請求的應答狀態碼,OK是對應答狀態碼的解釋,之后是這個文檔的元信息和文檔正文。(相關應答狀態碼和元信息的解釋請參閱Inetrnet標準草案:RFC2616)。

 

  1. Http.java   
  2. import java.net.*;   
  3. import java.io.*;   
  4. import java.util.Properties;   
  5. import java.util.Enumeration;   
  6. public class Http {   
  7. protected Socket client;   
  8. protected BufferedOutputStream sender;   
  9. protected BufferedInputStream receiver;   
  10. protected ByteArrayInputStream byteStream;   
  11. protected URL target;   
  12. private int responseCode=-1;   
  13. private String responseMessage="";   
  14. private String serverVersion="";   
  15. private Properties header = new Properties();   
  16. public Http() { }   
  17. public Http(String url) {   
  18. GET(url) ;   
  19. }   
  20. /* GET方法根據URL,會請求文件、數據庫查詢結果、程序運行結果等多種內容 */   
  21. public void GET(String url) {   
  22. try {   
  23. checkHTTP(url);   
  24. openServer(target.getHost(),target.getPort() );   
  25. String cmd = "GET "+ getURLFormat(target) +" HTTP/1.0\r\n"   
  26. + getBaseHeads()+"\r\n";   
  27. sendMessage(cmd);   
  28. receiveMessage();   
  29. } catch(ProtocolException p) {   
  30. p.printStackTrace();   
  31. return;   
  32. } catch(UnknownHostException e) {   
  33. e.printStackTrace();   
  34. return;   
  35. } catch(IOException i) {   
  36. i.printStackTrace();   
  37. return;   
  38. }   
  39. }   
  40. /*   
  41. * HEAD方法只請求URL的元信息,不包括URL本身。若懷疑本機和服務器上的   
  42. * 文件相同,用這個方法檢查最快捷有效。   
  43. */   
  44. public void HEAD(String url) {   
  45. try {   
  46. checkHTTP(url);   
  47. openServer(target.getHost(),target.getPort() );   
  48. String cmd = "HEAD "+getURLFormat(target)+" HTTP/1.0\r\n"   
  49. +getBaseHeads()+"\r\n";   
  50. sendMessage(cmd);   
  51. receiveMessage();   
  52. }catch(ProtocolException p) {   
  53. p.printStackTrace();   
  54. return;   
  55. }catch(UnknownHostException e) {   
  56. e.printStackTrace();   
  57. return;   
  58. }catch(IOException i) {   
  59. i.printStackTrace();   
  60. return;   
  61. }   
  62. }   
  63. /*   
  64. * POST方法是向服務器傳送數據,以便服務器做出相應的處理。例如網頁上常用的   
  65. * 提交表格。   
  66. */   
  67. public void POST(String url,String content) {   
  68. try {   
  69. checkHTTP(url);   
  70. openServer(target.getHost(),target.getPort() );   
  71. String cmd = "POST "+ getURLFormat(target) +"HTTP/1.0\r\n"+getBaseHeads();   
  72. cmd += "Content-type: application/x-www-form-urlencoded\r\n";   
  73. cmd += "Content-length: " + content.length() + "\r\n\r\n";   
  74. cmd += content+"\r\n";   
  75. sendMessage(cmd);   
  76. receiveMessage();   
  77. }catch(ProtocolException p) {   
  78. p.printStackTrace();   
  79. return;   
  80. }catch(UnknownHostException e) {   
  81. e.printStackTrace();   
  82. return;   
  83. }catch(IOException i) {   
  84. i.printStackTrace();   
  85. return;   
  86. }   
  87. }   
  88. protected void checkHTTP(String url) throws ProtocolException {   
  89. try {   
  90. URL target = new URL(url);   
  91. if(target==null || !target.getProtocol().toUpperCase().equals("HTTP") )   
  92. throw new ProtocolException("這不是HTTP協議");   
  93. this.target = target;   
  94. } catch(MalformedURLException m) {   
  95. throw new ProtocolException("協議格式錯誤");   
  96. }   
  97. }   
  98. /*   
  99. * 與Web服務器連接。若找不到Web服務器,InetAddress會引發UnknownHostException   
  100. * 異常。若Socket連接失敗,會引發IOException異常。   
  101. */   
  102. protected void openServer(String host,int port) throws   
  103. UnknownHostException,IOException {   
  104. header.clear();   
  105. responseMessage=""responseCode=-1;   
  106. try {   
  107. if(client!=null) closeServer();   
  108. if(byteStream != null) {   
  109. byteStream.close(); byteStream=null;   
  110. }   
  111. InetAddress address = InetAddress.getByName(host);   
  112. client = new Socket(address,port==-1?80:port);   
  113. sender = new BufferedOutputStream(client.getOutputStream());   
  114. receiver = new BufferedInputStream(client.getInputStream());   
  115. }catch(UnknownHostException u) {   
  116. throw u;   
  117. }catch(IOException i) {   
  118. throw i;   
  119. }   
  120. }   
  121. /* 關閉與Web服務器的連接 */   
  122. protected void closeServer() throws IOException {   
  123. if(client==null) return;   
  124. try {   
  125. client.close(); sender.close(); receiver.close();   
  126. } catch(IOException i) {   
  127. throw i;   
  128. }   
  129. client=nullsender=nullreceiver=null;   
  130. }   
  131. protected String getURLFormat(URL target) {   
  132. String spec = "http://   
  133. +target.getHost();   
  134. if(target.getPort()!=-1)   
  135. spec+=":"+target.getPort();   
  136. return spec+=target.getFile();   
  137. }   
  138. /* 向Web服務器傳送數據 */   
  139. protected void sendMessage(String data) throws IOException{   
  140. sender.write(data.getBytes(),0,data.length());   
  141. sender.flush();   
  142. }   
  143. /* 接收來自Web服務器的數據 */   
  144. protected void receiveMessage() throws IOException{   
  145. byte data[] = new byte[1024];   
  146. int count=0;   
  147. int word=-1;   
  148. // 解析***行   
  149. while( (word=receiver.read())!=-1 ) {   
  150. if(word=='\r'||word=='\n') {   
  151. word=receiver.read();   
  152. if(word=='\n') word=receiver.read();   
  153. break;   
  154. }   
  155. if(count == data.length) data = addCapacity(data);   
  156. data[count++]=(byte)word;   
  157. }   
  158. String message = new String(data,0,count);   
  159. int mark = message.indexOf(32);   
  160. serverVersion = message.substring(0,mark);   
  161. while( mark<message.length() && message.charAt(mark+1)==32 ) mark++;   
  162. responseCode = Integer.parseInt(message.substring(mark+1,mark+=4));   
  163. responseMessage = message.substring(mark,message.length()).trim();   
  164. // 應答狀態碼和處理請讀者添加   
  165. switch(responseCode) {   
  166. case 400:   
  167. throw new IOException("錯誤請求");   
  168. case 404:   
  169. throw new FileNotFoundException( getURLFormat(target) );   
  170. case 503:   
  171. throw new IOException("服務器不可用" );   
  172. }   
  173. if(word==-1) throw new ProtocolException("信息接收異常終止");   
  174. int symbol=-1;   
  175. count=0;   
  176. // 解析元信息   
  177. while( word!='\r' && word!='\n' && word>-1) {   
  178. if(word=='\t') word=32;   
  179. if(count==data.length) data = addCapacity(data);   
  180. data[count++] = (byte)word;   
  181. parseLine: {   
  182. while( (symbol=receiver.read()) >-1 ) {   
  183. switch(symbol) {   
  184. case '\t':   
  185. symbol=32; break;   
  186. case '\r':   
  187. case '\n':   
  188. word = receiver.read();   
  189. if( symbol=='\r' && word=='\n') {   
  190. word=receiver.read();   
  191. if(word=='\r') word=receiver.read();   
  192. }   
  193. if( word=='\r' || word=='\n' || word>32) break parseLine;   
  194. symbol=32; break;   
  195. }   
  196. if(count==data.length) data = addCapacity(data);   
  197. data[count++] = (byte)symbol;   
  198. }   
  199. word=-1;   
  200. }   
  201. message = new String(data,0,count);   
  202. mark = message.indexOf(':');   
  203. String key = null;   
  204. if(mark>0) key = message.substring(0,mark);   
  205. mark++;   
  206. while( mark<message.length() && message.charAt(mark)<=32 ) mark++;   
  207. String value = message.substring(mark,message.length() );   
  208. header.put(key,value);   
  209. count=0;   
  210. }   
  211. // 獲得正文數據   
  212. while( (word=receiver.read())!=-1) {   
  213. if(count == data.length) data = addCapacity(data);   
  214. data[count++] = (byte)word;   
  215. }   
  216. if(count>0) byteStream = new ByteArrayInputStream(data,0,count);   
  217. data=null;   
  218. closeServer();   
  219. }   
  220. public String getResponseMessage() {   
  221. return responseMessage;   
  222. }   
  223. public int getResponseCode() {   
  224. return responseCode;   
  225. }   
  226. public String getServerVersion() {   
  227. return serverVersion;   
  228. }   
  229. public InputStream getInputStream() {   
  230. return byteStream;   
  231. }   
  232. public synchronized String getHeaderKey(int i) {   
  233. if(i>=header.size()) return null;   
  234. Enumeration enum = header.propertyNames();   
  235. String key = null;   
  236. for(int j=0; j<=i; j++)   
  237. key = (String)enum.nextElement();   
  238. return key;   
  239. }   
  240. public synchronized String getHeaderValue(int i) {   
  241. if(i>=header.size()) return null;   
  242. return header.getProperty(getHeaderKey(i));   
  243. }   
  244. public synchronized String getHeaderValue(String key) {   
  245. return header.getProperty(key);   
  246. }   
  247. protected String getBaseHeads() {   
  248. String inf = "User-Agent: myselfHttp/1.0\r\n"+   
  249. "Accept: www/source; text/html; image/gif; */*\r\n";   
  250. return inf;   
  251. }   
  252. private byte[] addCapacity(byte rece[]){   
  253. byte temp[] = new byte[rece.length+1024];   
  254. System.arraycopy(rece,0,temp,0,rece.length);   
  255. return temp;   
  256. }   
  257. public static void main(String[] args) {   
  258. Http http=new Http();   
  259. //http.GET("http://192.168.1.5   
  260. );   
  261. int i;   
  262. for (i=0; i<50000; i++) {   
  263. http.GET("http://www.model-dl.com/modelinfo.asp?modelid=101 );   
  264. http.POST("http://www.model-dl.com/modelinfo.asp?modelid=101,"ratecontd=101&MM_insert=form1 ");   
  265. }   
  266. }   

以上就是對Java Socket應答的相關介紹,希望大家有所發現。

【編輯推薦】

  1. Java Socket編程相關源代碼的介紹
  2. Java Socket網絡傳輸的序列化機制
  3. Java Socket傳輸如何完成自己的網絡任務
  4. Java Socket傳輸數據的文件系統介紹
  5. Java Socket通信的序列化和反序列化代碼介紹
責任編輯:張浩 來源: 互聯網
相關推薦

2018-10-09 09:28:12

HTTPHTTP協作服務器

2019-04-23 10:48:55

HTTPTomcat服務器

2019-08-01 15:25:17

Http服務器協議

2010-05-25 13:20:46

http與svn

2019-08-22 15:26:24

HTTP服務器Python

2019-07-04 15:00:32

PythonHTTP服務器

2017-11-10 08:58:49

Web服務器應用程序

2009-07-03 13:05:47

JSP HTTP服務器

2010-03-19 15:01:23

Java Socket

2015-10-08 09:38:24

HTTP網絡協議文件傳輸

2015-09-29 09:25:20

HTTP網絡協議

2015-09-28 13:39:13

Http網絡協議HTTP

2015-10-09 09:41:24

HTTP網絡協議文件傳輸

2015-10-10 16:46:14

HTTP網絡協議文件傳輸

2011-12-07 17:05:45

JavaNIO

2012-02-27 13:56:19

Java服務器

2010-03-19 17:04:01

Java socket

2010-03-19 14:01:55

Java Socket

2010-03-17 17:54:25

java Socket

2010-03-18 20:00:35

Java socket
點贊
收藏

51CTO技術棧公眾號

免费成人高清视频| 7777精品久久久大香线蕉| 另类欧美小说| 波多野结衣理论片| 婷婷精品进入| 亚洲电影av在线| 9久久婷婷国产综合精品性色| 99在线视频观看| 久久久欧美精品sm网站| 91天堂在线观看| 亚洲婷婷综合网| 天天射天天综合网| 亚洲网站在线播放| 动漫av在线免费观看| 粉嫩一区二区三区| 一区二区三区中文字幕电影 | 国产乱人伦丫前精品视频| 色综合久久中文综合久久牛| 少妇高潮大叫好爽喷水| 日本免费不卡| 成人免费毛片片v| 国产精品一区久久久| 日本熟妇成熟毛茸茸| 久久久五月天| 伊是香蕉大人久久| 屁屁影院国产第一页| 日韩精品视频一区二区三区| 欧美亚洲国产一卡| 97国产在线播放| 三级资源在线| 亚洲另类中文字| 亚洲欧美日韩国产yyy| 视频一区二区在线播放| 成人免费视频播放| www.久久草| 国产普通话bbwbbwbbw| 日韩成人午夜精品| 国产成人aa精品一区在线播放 | 91成人在线免费观看| 777av视频| 黑人另类精品××××性爽| 亚洲欧美另类小说| 中文字幕久精品免| 色综合久久影院| 久久久久久黄色| 欧美精品免费观看二区| 婷婷在线观看视频| 波多野结衣在线一区| 97人人干人人| 精品毛片在线观看| 国产精品99久久久| 97视频中文字幕| 亚洲精品久久久久久无码色欲四季 | 国产喷白浆一区二区三区| 美女被啪啪一区二区| 亚洲日本香蕉视频| 国产亚洲污的网站| 翔田千里亚洲一二三区| av男人的天堂在线| 国产精品欧美一区喷水| 中文字幕一区综合| 在线āv视频| 亚洲自拍偷拍欧美| 成人毛片视频网站| 88xx成人免费观看视频库| 在线免费观看日本一区| 激情五月俺来也| 国产亚洲高清一区| 精品国产免费人成在线观看| 欧美双性人妖o0| 九九综合久久| 日韩中文字幕视频在线| 91高清免费观看| 亚洲国产免费| 国产成人av在线播放| 在线免费观看日韩视频| 国产精品一区二区男女羞羞无遮挡 | 久久国产视频精品| 日韩一区精品字幕| 91精品久久久久久久久久久久久 | 韩国av免费观看| 亚洲影视综合| 成人欧美在线视频| 欧美 日韩 人妻 高清 中文| 久久精品日产第一区二区三区高清版 | 91综合在线| 久久99精品久久久久久青青91| 激情综合五月网| 免费久久99精品国产自在现线| 国产精品嫩草影院久久久| 精品女同一区二区三区| www久久久久| 一区二区三区不卡在线| 97蜜桃久久| 欧美在线免费观看亚洲| 国产香蕉精品视频| 欧美伦理在线视频| 久久久伊人日本| 一二三四区视频| www.视频一区| 手机成人av在线| 成人爱爱网址| 精品国精品国产| 午夜国产福利视频| 一本一道久久综合狠狠老精东影业| 国产精品偷伦一区二区| 日日夜夜精品免费| 亚洲天堂精品在线观看| 无码少妇一区二区三区芒果| 成人激情自拍| 久久久国产视频91| 免费一级a毛片| 不卡一区中文字幕| 成年人三级视频| 欧美美女日韩| 亚洲国产精品系列| 18精品爽视频在线观看| 经典三级在线一区| 亚洲精品视频一区二区三区| 女人让男人操自己视频在线观看| 欧美一区二区三区电影| 日本欧美一区二区三区不卡视频| 亚洲三级视频| 国产精品美女诱惑| 牛牛在线精品视频| 欧美另类z0zxhd电影| 受虐m奴xxx在线观看| 日韩午夜av| 国产伦精品一区二区三区高清| 黄在线免费观看| 欧美日韩你懂得| 少妇愉情理伦三级| 日韩精品亚洲专区| 欧美精品与人动性物交免费看| 爱看av在线入口| 日韩美女一区二区三区四区| 婷婷激情四射网| 久久99在线观看| 一区二区三区在线观看www| 欧美性理论片在线观看片免费| 亚洲精品一区中文字幕乱码| 亚洲精品国产精品乱码| a在线播放不卡| 日本xxxxxxxxxx75| 激情小说一区| 午夜剧场成人观在线视频免费观看| 国内老熟妇对白xxxxhd| 亚洲激情图片一区| 极品人妻一区二区| 欧美日韩成人| 精品国产免费一区二区三区| 黄色激情在线播放| 亚洲欧美中文日韩在线v日本| 国产视频1区2区| 国产日韩欧美a| 一路向西2在线观看| 国产精品二区不卡| 999国内精品视频在线| 久久国产精品黑丝| 日韩精品极品视频| 天堂免费在线视频| 中文字幕中文字幕一区二区| 欧美午夜精品理论片| 亚洲色图88| 国产在线精品二区| 激情亚洲影院在线观看| 日韩亚洲欧美中文高清在线| 国产黄色片免费| 亚洲图片欧美色图| 少妇按摩一区二区三区| 蜜臀精品一区二区三区在线观看 | 亚洲女人av| 色爱区成人综合网| 久久国产精品美女| 68精品久久久久久欧美| 国产在线观看网站| 5566中文字幕一区二区电影 | 欧美在线一二三四区| 午夜国产福利视频| 成人毛片在线观看| 天美星空大象mv在线观看视频| 婷婷综合激情| 久99久视频| 91丨精品丨国产| 69**夜色精品国产69乱| 日本在线看片免费人成视1000| 欧美v日韩v国产v| 亚洲熟妇无码乱子av电影| 国产精品国产馆在线真实露脸| 韩国av中国字幕| 日韩黄色免费网站| 黄色三级中文字幕| 北条麻妃国产九九九精品小说| 亚洲专区在线视频| 性欧美超级视频| 国外成人性视频| 欧美成人高清在线| 亚洲欧美另类在线观看| 99热这里只有精品99| 色综合久久综合网97色综合| 久草视频免费播放| 中文字幕在线不卡一区| 搡老熟女老女人一区二区| 久久99精品久久久久久久久久久久| 自拍日韩亚洲一区在线| 中文精品久久| 亚洲精品一区二| 色天下一区二区三区| 99在线视频播放| 久久天堂影院| 国产成人高清激情视频在线观看| 日本孕妇大胆孕交无码| 日韩一级黄色av| 激情视频在线观看免费| 欧美精品一区二区三区蜜桃视频| 亚洲一区二区激情| 色香蕉久久蜜桃| av大片免费观看| 亚洲已满18点击进入久久| 91麻豆精品成人一区二区| 久久久99久久精品欧美| 日本一区二区在线免费观看| 国产美女av一区二区三区| 久久撸在线视频| 免费在线观看成人| 狠狠热免费视频| 奶水喷射视频一区| 美女av免费在线观看| 伊人激情综合| 日韩美女爱爱视频| 乱码一区二区三区| 婷婷亚洲成人| 不卡的av一区| 日韩在线影院| 日本在线观看天堂男亚洲| 国产在线88av| 97在线观看视频国产| 国产视频在线播放| 亚洲人午夜精品免费| 国产三级电影在线观看| 亚洲欧洲国产精品| 黄色av网址在线免费观看| 亚洲男人天堂2023| 美女欧美视频在线观看免费 | a视频免费观看| 菠萝蜜视频在线观看一区| 欧美一区二区免费在线观看| 成人97人人超碰人人99| 给我免费观看片在线电影的| 不卡大黄网站免费看| 中出视频在线观看| 国产偷国产偷精品高清尤物 | 区一区二视频| 一区二区在线高清视频| 91精品1区| 国产精品国三级国产av| 亚洲午夜一级| 噜噜噜久久亚洲精品国产品麻豆| 久久国产66| 少妇一级淫免费放| 国产一区二区三区日韩| 人妻 丝袜美腿 中文字幕| 99视频热这里只有精品免费| 受虐m奴xxx在线观看| 国产精品美女久久久久久| 一区二区国产精品精华液| 亚洲精品成人在线| 日韩污视频在线观看| 色悠悠久久综合| 91欧美日韩麻豆精品| 日韩精品中文字幕一区二区三区| 日本高清视频www| 亚洲欧美激情精品一区二区| 天堂а√在线资源在线| 欧美激情xxxxx| 男人皇宫亚洲男人2020| 成人免费自拍视频| 精品按摩偷拍| 亚洲精品免费在线看| 欧美日韩免费| 天天爱天天操天天干| 成人性视频免费网站| 精品人妻一区二区三区四区| 亚洲激情六月丁香| 精品免费囯产一区二区三区| 欧美放荡的少妇| 日本韩国一区| 久久亚洲欧美日韩精品专区 | 国产福利在线观看视频| 中文字幕欧美激情| 久久亚洲精品大全| 欧美色涩在线第一页| www.四虎在线观看| 亚洲小视频在线观看| 女同视频在线观看| 国产精品视频久久久久| 欧美激情网址| 日韩 欧美 自拍| 日日夜夜精品视频免费| 久久久无码人妻精品无码| 国产精品色一区二区三区| 在线观看亚洲天堂| 欧美一区二区视频网站| 精品资源在线看| 国模精品视频一区二区| 四虎精品一区二区免费| 欧美日韩精品一区| 欧美色图首页| 欧美日韩理论片| 中文字幕第一区第二区| 亚洲免费在线视频观看| 欧美xxxxx牲另类人与| 久久亚洲天堂| 国产精品普通话| 国产精品免费大片| 久久亚洲中文字幕无码| 国产精品综合一区二区| 午夜精品久久久久99蜜桃最新版| 色综合天天综合网天天看片 | 中文字幕欧美日韩| 亚洲欧美小说色综合小说一区| 国产91一区二区三区| 亚洲国产精品成人| 九九热精品在线播放| 国产亚洲欧美日韩日本| 久久久久久久久久免费视频| 精品国产网站在线观看| 欧美videossex另类| 亚洲一区二区三区毛片| 91综合在线| 亚洲黄色av片| 日韩一区中文字幕| 夜夜躁狠狠躁日日躁av| 日韩最新免费不卡| a成人v在线| 亚洲一区精彩视频| 麻豆成人91精品二区三区| 成人黄色短视频| 欧美日韩美女一区二区| 国产日产一区二区三区| 成人免费午夜电影| 亚洲色图二区| 日韩女优在线视频| 亚洲成人777| 色婷婷激情五月| 久久久久久九九九| 牛牛精品成人免费视频| 国产精品无码一区二区在线| 99视频一区二区| 亚洲成人av影片| 亚洲一区二区福利| 日韩欧美三区| 2021国产视频| 成人禁用看黄a在线| 久久青青草视频| 亚洲人成五月天| 国产综合色激情| 欧美一级特黄aaaaaa在线看片| 国产91富婆露脸刺激对白| 日韩av无码中文字幕| 亚洲欧美日本另类| 欧美aaaaaaaa| 欧美日韩午夜爽爽| 99久久精品久久久久久清纯| 国产成人无码一区二区在线播放| 亚洲性生活视频在线观看| 日韩欧美三区| 国产日本在线播放| 久久夜色精品国产噜噜av | 亚洲国产精品va| 日韩成人影音| 日本精品福利视频| 91一区二区在线| 中文字幕乱码视频| 欧美成人四级hd版| 久久99性xxx老妇胖精品| av免费一区二区| 亚洲高清免费一级二级三级| 日本天堂影院在线视频| 91美女片黄在线观看游戏| 亚洲国产mv| 亚洲女同二女同志奶水| 欧美精品一区二区三区很污很色的 | 欧美激情麻豆| www.自拍偷拍| 91精品在线免费观看| 极品盗摄国产盗摄合集| 综合婷婷亚洲小说| av女名字大全列表| 欧美疯狂做受xxxx富婆| 欧美videosex性极品hd| 亚洲v欧美v另类v综合v日韩v| 国产成人精品影院| 黄色污污视频软件| 欧美激情亚洲一区| 日韩中文首页| 30一40一50老女人毛片| 日韩欧美高清一区| 国产成人精品一区二区三区视频| 99色这里只有精品|