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

jQuery調(diào)用WCF服務傳遞JSON對象

開發(fā) 開發(fā)工具
本文詳細介紹了如何使用WCF去創(chuàng)建一個服務端口,從而能夠被ASP.Net頁面通過jQuery的AJAX方法訪問。這個例子就是為了說明,在沒有一個好的客戶端代理的情況下,我們是如何調(diào)用Web服務的。

下面這個示例使用了WCF去創(chuàng)建一個服務端口從而能夠被ASP.Net頁面通過jQuery的AJAX方法訪問,我們將在客戶端使用Ajax技術來 與WCF服務進行通信。這里我們僅使用jQuery去連接Web Service,而不去使用ASP.Net AJAX庫,至于為什么不使用AJAX庫中,那是因為我們在項目中已經(jīng)使用了jQuery,而它已經(jīng)能處理全部的AJAX請求和所有功能,并且,如果我們 一旦使用ASP.NET AJAX庫,我們也必須多包含一個超過80Kb的數(shù)據(jù)量(調(diào)試模式下會更大),但這也不是說ASP.NET AJAX庫不實用,事實上,如果使用了相同的類庫,我們能夠少寫很多的額外代碼,但這個例子就是為了說明,在沒有一個好的客戶端代理的情況下,我們是如何調(diào)用Web服務的。

WCF 服務:

我們先創(chuàng)建一個WebSite,然后添加一個AJAX-enabled WCF Service,從而創(chuàng)建WCF服務。(請確保你使用了正確的.Net Framework 版本,我用的是3.5)
創(chuàng)建WCF服務

在我們添加完service后,它會自動進入該service的后置代碼文件,Go ahead and browse around the file for a second.

首先我們要做的是找到"AspNetCompatibilityRequirements"并將其值置為 "Allowed":

[AspNetCompatibilityRequirements( RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed )] 
 

這個屬性的設置可將我們的服務跑在ASP.NET compatibility模式,如果我們未將該值設為"Allowed",那么就無法通過ASP.Net去訪問到該服務,這個屬性是當你添加 "AJAX-enabled WCF Service" 時自動生成的。更多祥細請參看MSDN。

現(xiàn)在再來看自動生成的后置代碼文件,我們能發(fā)現(xiàn)已經(jīng)存在了一個被標注了"OperationContract"特性的"DoWork()" 的方法,這個方法是自動生成的,我們將使用這個方法來完成下面的示例。我們再來為該方法添加一個"WebGet"的特性,并設"RequestFormat" 的值為 "Json." 我們再來為該方法加上另外的一個特性RequestFormat,WebGet 和Get動詞一樣,作用于一個UriTemplate(本文不對此作進一步討論),RequestFormat 特性可以讓我們接收JSON格式的請求。

我們的 "DoWork()" 方法如下:

  1. [OperationContract]   
  2. [WebGet( RequestFormat=WebMessageFormat.Json )]   
  3. public void DoWork()   
  4. {   
  5.     // Add your operation implementation here   
  6.     return;   

對象的模型:

我們希望通過"DoWork()" 來傳遞一個叫“Person”的對象,那先來創(chuàng)建一個Person對象寫入到當前類的頭部,其包含字段和屬性(Name, Age 和 the types of Shoes they own),這個類同時也作為所傳遞JSON的結(jié)構(gòu)。

  1. [Serializable]   
  2. [DataContract( Namespace = "http://www.dennydotnet.com/", Name = "Person" )]   
  3. public class Person   
  4. {   
  5.     private string _name = string.Empty;   
  6.     private int _age = 0;   
  7.  
  8.     [DataMember( IsRequired = true, Name = "Name" )]   
  9.     public string Name   
  10.     {   
  11.         get { return _name; }   
  12.         set { _name = value; }   
  13.     }   
  14.  
  15.     [DataMember( IsRequired = true, Name = "Age" )]   
  16.     public int Age   
  17.     {   
  18.         get { return _age; }   
  19.         set { _age = value; }   
  20.     }   
  21.  
  22.     [DataMember( IsRequired = true, Name = "Shoes" )]   
  23.     public List<String> Shoes;   
  24. }   
  25.  
  26.    

我們已經(jīng)為 "Person”類的名稱和命名空間標注上了契約,我們?nèi)孕枰獮閷傩允谟跀?shù)據(jù)成員特性,為每個屬性 設置"IsRequired"并具體指定其名稱。你只需要具體指定名字,如果它和屬性名不一樣。舉例來說吧,如果你有一個屬性叫作“Level”,但你在 數(shù)據(jù)成員特性中賦值為“Rank”,現(xiàn)在我們要回去修改我們的“DoWork()”方法,去接收Person對象作為參數(shù)。具體參下面代碼塊。

  1. [OperationContract]   
  2. [WebGet( RequestFormat=WebMessageFormat.Json )]   
  3. public void DoWork(Person p)   
  4. {   
  5.     // Add your operation implementation here   
  6.     return;   
  7. }  
  8.   

對Web.Config文件進行配置:
我們僅需對web.config文件做出很小的修改就能對服務進行訪問了。首先加入一個 serviceBehavior 用來允許Http Get請求,再添加一些調(diào)試選項幫助。代碼如下:

Below </endpointBehaviors>

  1. <serviceBehaviors>   
  2.     <behavior name="ServiceAspNetAjaxBehavior">   
  3.         <serviceMetadata httpGetEnabled="true" httpGetUrl="" />   
  4.         <serviceDebug httpHelpPageEnabled="true" includeExceptionDetailInFaults="true" />   
  5.     </behavior>   
  6. </serviceBehaviors> 
  7.   

在<services>這里</services>之間,你的代碼如下:

  1. <service name="Service" behaviorConfiguration="ServiceAspNetAjaxBehavior">   
  2.     <endpoint address="" behaviorConfiguration="ServiceAspNetAjaxBehavior"   
  3. binding="webHttpBinding" contract="Service" />   
  4.     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />   
  5. </service>   
  6.   

注意:

  1. <serviceDebug httpHelpPageEnabled="true" includeExceptionDetailInFaults="true" />  

允許例外可能會導致內(nèi)部應用相關信息,包括個人信息的泄露。設置為true僅用于調(diào)試目的!

你的Web.config文件修改后如下圖所示:

Webconfig文件

回到前端頁面:

現(xiàn)在我們的服務已經(jīng)被創(chuàng)建和配置了,再來關注前端頁面部分吧(確保頁面已引用jQuery.js文件),首先來創(chuàng)建一個簡單的Json對象用于向service傳遞,我們在Person類結(jié)構(gòu)的基礎上創(chuàng)建該JSON對象。

  1. var mydata = { "Name":"Denny""Age":23, "Shoes":["Nike","Osiris","Etnies"] };  

如果你對JSON還不是很熟悉,我們可以把它看作一個對象,這個小工具幫助你來查看 (JsonViewer):

JsonViewer

我們需要使用WCF和jQuery進行Ajax通信,下面的代碼創(chuàng)建了一個AJAX呼叫,在頭部設置了GET方式,和內(nèi)容類型為 application/json,將url的路徑置為WCF 服務的 svc 文件,并在其后加上/和所要執(zhí)行方法的名稱,在這里我們要調(diào)用的是DoWork()方法,data是用來傳遞參數(shù),為了讓jQuery不去自動處理我們的 數(shù)據(jù),將processData設為false,我們還加入了對success和error的處理,以更多的了解AJAX執(zhí)行完之后的處理過程。

  1. function sendAJAX(data) {   
  2.     $.ajax({   
  3.         type: "GET",   
  4.         contentType: "application/json",   
  5.         url: "Service.svc/DoWork",   
  6.         data: data,   
  7.         processData: false,   
  8.         success: function(msg){   
  9.                 alert( "Data Saved!" );   
  10.         },   
  11.         error:function(XMLHttpRequest, textStatus, errorThrown){   
  12.                 alert( "Error Occured!" );   
  13.         }   
  14.     });   
  15. }  
  16.   

然而很不幸運,這里有一個小的問題,我們必須發(fā)送真正的JSON字符串,作為參數(shù)傳遞。但還沒有簡單的方法讓JSON對象轉(zhuǎn)換為字符串,如果你試了data.toString(),得到的會是一個 "[object Object]"值。這不是我們想要的。

所以在這里我們要修改方法使得它能將JSON轉(zhuǎn)換成字符串。

  1. function json2string(strObject) {   
  2. var c, i, l, s = '', v, p;   
  3.  
  4. switch (typeof strObject) {   
  5. case 'object':   
  6. if (strObject) {   
  7. if (strObject.length && typeof strObject.length == 'number') {   
  8. for (i = 0; i < strObject.length; ++i) {   
  9.      v = json2string(strObject[i]);   
  10. if (s) {   
  11.       s += ',';   
  12.      }   
  13.      s += v;   
  14.     }   
  15. return '[' + s + ']';   
  16.    } else if (typeof strObject.toString != 'undefined') {   
  17. for (i in strObject) {   
  18.      v = strObject[i];   
  19. if (typeof v != 'undefined' && typeof v != 'function') {   
  20.       v = json2string(v);   
  21. if (s) {   
  22.        s += ',';   
  23.       }   
  24.       s += json2string(i) + ':' + v;   
  25.      }   
  26.     }   
  27. return '{' + s + '}';   
  28.    }   
  29.   }   
  30. return 'null';   
  31. case 'number':   
  32. return isFinite(strObject) ? String(strObject) : 'null';   
  33. case 'string':   
  34.   l = strObject.length;   
  35.   s = '"';   
  36. for (i = 0; i < l; i += 1) {   
  37.    c = strObject.charAt(i);   
  38. if (c >= ' ') {   
  39. if (c == '\\' || c == '"') {   
  40.      s += '\\';   
  41.     }   
  42.     s += c;   
  43.    } else {   
  44. switch (c) {   
  45. case '\b':   
  46.       s += '\\b';   
  47. break;   
  48. case '\f':   
  49.       s += '\\f';   
  50. break;   
  51. case '\n':   
  52.       s += '\\n';   
  53. break;   
  54. case '\r':   
  55.       s += '\\r';   
  56. break;   
  57. case '\t':   
  58.       s += '\\t';   
  59. break;   
  60. default:   
  61.       c = c.charCodeAt();   
  62.       s += '\\u00' + Math.floor(c / 16).toString(16) +   
  63.        (c % 16).toString(16);   
  64.     }   
  65.    }   
  66.   }   
  67. return s + '"';   
  68. case 'boolean':   
  69. return String(strObject);   
  70. default:   
  71. return 'null';   
  72. }   
  73. }   
  74.    

現(xiàn)在我們有一個方法可以將JSON對象轉(zhuǎn)成我們所需要的字符串,現(xiàn)在我們回過頭去修改我們之前定義的 "mydata" 變量,我們應當按下面去應用所寫的json2string方法。

  1. var mydata = { "Name":"Denny""Age":23, "Shoes":["Nike","Osiris","Etnies"] };   
  2. var jsonStr = "p=" + json2string(mydata);  

注意在下面我準備了"p=" 字符在我們的JSON字符串中,“p”對應于"DoWork()" 方法中的參數(shù),當我們將參數(shù)改名為"Dude" ( 例如DoWork(Person Dude) )時,我們也必須將此處替換為"Dude="

現(xiàn)在我們準備好了查詢字符串,我們參看到我們?nèi)绾握{(diào)用服務:

  1. http://www.dennydotnet.com/Service.svc/DoWork/?p={ "Name":"Denny", "Age":23, "Shoes":["Nike","Osiris","Etnies"] } 

你將接收到一個已經(jīng)為URL編碼處理過的值,如下:

  1. http://www.dennydotnet.com/Service.svc/DoWork/?p=%7b+%22Name%22%3a%22Denny%22%2c+%22Age%22%3a23%2c+%22Shoes%22%3a%5b%22Nike%22%2c%22Osiris%22%2c%22Etnies%22%5d+%7d%3b 

緊接著我們?nèi)フ{(diào)用"SendAjax()" javascript 方法,現(xiàn)在能夠調(diào)試我們的服務并驗證數(shù)據(jù)是否被傳遞到服務。如下圖

驗證數(shù)據(jù)

現(xiàn)在你僅需要在DoWork()方法里實現(xiàn)自己的邏輯。注意無論你如何怎么去做 在WCF的服務端,它已經(jīng)為你做好了。

【編輯推薦】

  1. 使用ASP.NET AJAX調(diào)用WCF服務項模板
  2. 詳解自定義托管宿主WCF解決方案開發(fā)配置過程
  3. 詳解WCF可擴展框架中的行為擴展
  4. WCF中通過Dispose有效實現(xiàn)重用
  5. WCF開發(fā)基礎
責任編輯:yangsai 來源: 網(wǎng)絡
相關推薦

2011-05-16 09:30:30

jQueryWCF

2011-04-01 10:40:53

WCFiPhone調(diào)用

2009-07-27 17:54:39

WCF服務ASP.NET

2011-07-08 20:54:12

iPhone WCF

2011-01-19 12:52:49

WCF.NETC#

2009-12-07 14:35:42

WCF異步調(diào)用

2009-11-06 09:48:40

WCF服務

2010-02-26 17:51:16

Silverlight

2010-02-26 15:24:27

WCF釋放服務對象

2009-07-23 10:51:20

jQuery調(diào)用Web返回JSON數(shù)據(jù)

2010-03-02 13:54:43

WCF控制服務對象釋放

2010-07-06 10:07:10

jQueryJSON

2009-11-05 17:00:34

WCF有序傳遞

2009-12-21 15:12:40

WCF操作Stream

2009-12-21 10:19:05

Silverlight

2009-04-07 16:21:35

ASP.NETAJAXWCF

2010-02-25 14:53:44

WCF調(diào)用服務異常

2010-03-01 14:01:50

WCF服務異步調(diào)用

2009-12-22 15:14:33

WCF調(diào)用

2009-11-06 13:33:56

WCF Dispatc
點贊
收藏

51CTO技術棧公眾號

国产精品国产三级国产aⅴ浪潮 | 少妇久久久久久被弄到高潮| 国产精品视频在线观看免费| 欧美精品成人| 日韩hd视频在线观看| www.xxx亚洲| 顶级网黄在线播放| av电影在线观看一区| 国产精品久久99久久| 91精品一区二区三区蜜桃| 国产亚洲成av人片在线观黄桃| 色狠狠综合天天综合综合| 日本不卡一区二区三区四区| 人妻无码中文字幕| 久久99精品国产麻豆婷婷| 午夜精品久久久久久久99热 | 久久久亚洲影院你懂的| 国产美女免费网站| 亚洲欧美另类动漫| www.国产com| 91超碰成人| 亚洲美女精品成人在线视频| 一级片免费在线观看视频| 欧美一级大片| 亚洲成人自拍网| 中文字幕一区二区三区最新| 免费福利在线视频| 成人深夜在线观看| 成人激情在线播放| 欧美视频xxxx| 中文亚洲欧美| 久久久久久国产精品美女| 乱老熟女一区二区三区| 精品影片在线观看的网站| 精品国产乱码久久久久久1区2区| a在线观看免费视频| 老色鬼在线视频| 亚洲综合在线视频| 一本一本久久a久久精品综合妖精| 四虎电影院在线观看| 国产91丝袜在线18| 亚洲一区二区三区在线视频| 最近国语视频在线观看免费播放| 亚洲久久一区二区| 久久久亚洲影院你懂的| 久久久精品视频免费观看| 91青青国产在线观看精品| 亚洲欧美日韩精品| 亚洲蜜桃精久久久久久久久久久久| 综合激情久久| 日韩欧美一区二区在线视频| 污污视频在线免费| 91麻豆精品一二三区在线| 欧美吻胸吃奶大尺度电影| 欧美黑人又粗又大又爽免费| 精品3atv在线视频| 色国产综合视频| 日本在线观看a| 国内精彩免费自拍视频在线观看网址| 亚洲一区二区三区爽爽爽爽爽| 欧美人与动牲交xxxxbbbb| 成人在线观看亚洲| 亚洲精品成人在线| 国产 欧美 日韩 一区| 欧美性爽视频| 午夜电影网一区| 国产免费黄色av| 伊人久久视频| 欧美影院精品一区| 中文字幕第100页| 91精品麻豆| 亚洲第一区在线| 精品黑人一区二区三区观看时间| 西野翔中文久久精品字幕| 亚洲日本欧美中文幕| 丁香花五月婷婷| 天天影视欧美综合在线观看| 欧美情侣性视频| 日本三级理论片| 久久午夜视频| 成人精品视频在线| 国产成人无码www免费视频播放| 成人精品国产一区二区4080| 免费观看成人高| av资源在线观看免费高清| 中文字幕在线免费不卡| 精品人妻人人做人人爽| 在线天堂新版最新版在线8| 色88888久久久久久影院按摩 | 久久青青草综合| 国产精品免费观看| 亚洲欧美电影院| 日本在线xxx| 在线一区视频观看| 日韩欧美电影一区| 成人午夜剧场视频网站| 91超碰成人| 欧美在线视频免费播放| 91精东传媒理伦片在线观看| 成人免费观看av| 日韩久久久久久久| 后进极品白嫩翘臀在线播放| 色av成人天堂桃色av| 成人三级做爰av| 教室别恋欧美无删减版| 久久99亚洲热视| 中国a一片一级一片| 成人午夜在线视频| 这里只有精品66| 亚洲黄色中文字幕| 日韩欧美中文字幕公布| av电影在线不卡| 影音先锋一区| 成人有码在线视频| 理论视频在线| 午夜电影一区二区三区| 日本少妇激三级做爰在线| 国产欧美高清视频在线| 国模私拍视频一区| 国产精品午夜福利| 国产喷白浆一区二区三区| 日韩a级黄色片| 日韩黄色碟片| 亚洲无亚洲人成网站77777| 国产亚洲欧美精品久久久www | 少妇人妻精品一区二区三区| 国产精品激情偷乱一区二区∴| 国产午夜伦鲁鲁| 成人看片爽爽爽| 精品中文字幕在线| 97精品人妻一区二区三区| 91丨九色porny丨蝌蚪| 国产 日韩 欧美在线| 久久视频免费| 久久精品国产91精品亚洲| 精人妻无码一区二区三区| 99久久久无码国产精品| www.avtt| 9999久久久久| 欧美激情免费视频| 国产白浆在线观看| 亚洲柠檬福利资源导航| 红桃视频 国产| 欧美大人香蕉在线| 成人精品视频久久久久 | 欧美日韩xxxxx| 国产又粗又黄又爽的视频| 国产精品久久777777| 午夜免费高清视频| 色综合久久网| 国产美女被下药99| 欧洲日本在线| 7777精品伊人久久久大香线蕉最新版 | 日韩大片免费观看视频播放| 日韩福利片在线观看| 波多野结衣中文字幕一区| 久久国产午夜精品理论片最新版本| 亚洲成人影音| 97久久精品国产| 五十路在线视频| 精品久久久久久久久久久久久| 男女一区二区三区| 另类国产ts人妖高潮视频| 日本一区免费| 免费一区二区三区四区| 精品国内亚洲在观看18黄| 国产片高清在线观看| 亚洲欧美日韩久久精品| wwwxxxx在线观看| 亚洲国产99| 欧美日韩另类丝袜其他| www.精品国产| 欧美精品一区在线播放| 高h调教冰块play男男双性文| 午夜成人免费视频| 黄色av免费播放| 国产成人在线看| 男人的天堂狠狠干| 久草成人在线| 成人午夜在线影院| 日韩深夜视频| 深夜成人在线观看| 丰满少妇在线观看bd| 色乱码一区二区三区88| 日本少妇高清视频| 成人av在线电影| 91香蕉视频导航| 欧美片第1页综合| 免费av一区二区三区| 日韩美香港a一级毛片| 国模精品视频一区二区| 四虎影院一区二区| 99riav在线| 日韩一级成人av| 中文字幕69页| 一区二区三区四区亚洲| 丰满少妇高潮一区二区| 国产精品99久久久| 熟妇人妻va精品中文字幕| 亚洲精品久久久| 欧美福利一区二区三区| 欧美日本三级| 国产精品男人爽免费视频1| 污片视频在线免费观看| 亚洲香蕉在线观看| 亚洲第九十九页| 欧美日韩午夜在线视频| 久草手机在线观看| 亚洲精品中文字幕在线观看| 强伦人妻一区二区三区| 国产精品一二三四| 亚洲欧美另类动漫| 亚洲欧美日韩专区| www.激情网| 久久久久久免费视频| 日韩三级电影| 亚洲婷婷伊人| www国产亚洲精品| 综合久久伊人| 国产精品极品尤物在线观看| 麻豆mv在线看| 欧美激情在线观看| 91精选在线| 久久精品电影一区二区| 91在线免费看| 一个色综合导航| 免费在线一级视频| 亚洲国产成人在线播放| 精品国精品国产自在久不卡| 欧美日韩大陆在线| 天堂av免费在线观看| 欧美视频中文字幕在线| 日韩av电影网| 亚洲成人1区2区| 国自产精品手机在线观看视频| 一区二区三区www污污污网站| 日本韩国欧美三级| 久久国产视频一区| 欧美色播在线播放| 亚洲第一在线播放| 天天av天天翘天天综合网| 亚洲欧美在线观看视频| 亚洲午夜免费福利视频| 国产一级一片免费播放放a| 一区二区高清在线| 欧美久久久久久久久久久久| 亚洲精品高清视频在线观看| 国产性生活大片| 亚洲人成影院在线观看| 国产极品国产极品| 亚洲综合自拍偷拍| 欧美成人aaaaⅴ片在线看| 亚洲va欧美va人人爽| 日韩手机在线观看| 欧美性生交xxxxxdddd| 亚洲va在线观看| 在线亚洲一区观看| 亚洲中文一区二区三区| 91精品一区二区三区在线观看| 国产一区二区三区视频免费观看| 在线成人午夜影院| 成人av手机在线| 亚洲国产三级网| 日韩av成人| 自拍偷拍亚洲精品| 老司机精品影院| 欧美国产日韩一区二区| 第四色日韩影片| 欧美一级淫片videoshd| 嫩草伊人久久精品少妇av杨幂| 国产欧美日韩丝袜精品一区| 精品中文字幕一区二区三区四区| 国产精品10p综合二区| 久久视频在线观看| 日韩免费电影一区二区| 天天做天天爱天天爽综合网| 国产精品久久久久9999爆乳| 国产日韩欧美高清免费| 天天爽天天爽夜夜爽| 激情综合色综合久久综合| 免费黄色a级片| 国产清纯美女被跳蛋高潮一区二区久久w| 激情无码人妻又粗又大| 性欧美疯狂xxxxbbbb| 无码人妻久久一区二区三区不卡| 欧美日产在线观看| 欧美 日韩 中文字幕| 亚洲精品中文字幕女同| 91女主播在线观看| 久久久久女教师免费一区| 性欧美超级视频| 99re在线| 色综合综合网| 黄色三级中文字幕| 秋霞av亚洲一区二区三| av在线免费观看不卡| 久久久精品天堂| 国产精品九九九九九九| 日本高清免费不卡视频| 亚洲AV无码成人片在线观看| 亚洲欧美国产精品va在线观看| 超碰在线观看免费版| 欧美综合国产精品久久丁香| 欧美成人高清视频在线观看| 国内不卡一区二区三区| 亚洲精彩视频| 免费男同深夜夜行网站| 成人三级伦理片| 羞羞在线观看视频| 欧美午夜激情视频| a级片免费视频| 在线看欧美日韩| 麻豆蜜桃在线观看| 92国产精品久久久久首页| 少妇精品久久久一区二区| 国产玉足脚交久久欧美| 激情都市一区二区| 亚洲一区二区自偷自拍| 婷婷六月综合亚洲| 99热这里只有精品99| 最近2019中文字幕在线高清| 亚洲人成午夜免电影费观看| 粉嫩av四季av绯色av第一区| 希岛爱理一区二区三区| www.超碰com| 久久综合色播五月| 日韩av综合在线| 欧美r级在线观看| a篇片在线观看网站| 国产欧美一区二区三区在线看| 欧美天天影院| 91香蕉视频黄| 老司机成人免费视频| 在线免费观看一区| 日本1级在线| 欧美又大又硬又粗bbbbb| 秋霞影院一区二区三区| 久久久久免费看黄a片app| 懂色av一区二区三区免费观看| 九九热最新地址| 91精品国产入口| 国产黄大片在线观看画质优化| 国产精选久久久久久| 久久人人99| 中文字幕国产高清| 亚洲欧洲精品成人久久奇米网| 中文字幕乱码一区二区| 中文字幕欧美精品日韩中文字幕| 日韩在线免费| 欧美一二三四五区| 日韩高清在线不卡| 夜夜春很很躁夜夜躁| 欧美三级韩国三级日本一级| www.久久热.com| 国产日韩精品在线播放| 小小影院久久| 亚洲黄色小说在线观看| 亚洲一线二线三线久久久| 亚洲精品国产片| 97在线视频免费观看| 一呦二呦三呦国产精品| 欧美精品aaaa| 中文字幕亚洲一区二区av在线| 91精品在线视频观看| 大胆人体色综合| 99香蕉久久| 国产a级一级片| 国产女人aaa级久久久级| 91久久国语露脸精品国产高跟| 欧美老少做受xxxx高潮| 国产成人aa在线观看网站站| 国产中文字幕免费观看| 国产蜜臀av在线一区二区三区| 国产一区二区在线播放视频| 色综合久久久888| 欧美美女黄色| 国产成人精品无码播放| 亚洲欧美日韩中文播放| 天天色棕合合合合合合合| 国产成人精品久久二区二区| 国产韩日影视精品| www.四虎在线| 欧美中文字幕一区| 18+视频在线观看| 久草精品电影| 国产在线看一区| 日韩av无码中文字幕| 最新亚洲国产精品| 福利欧美精品在线| 黄色成人免费看| 一区二区三区在线免费| 欧洲综合视频| 亚洲专区中文字幕| 久久亚洲色图| 激情四射综合网| 一个人看的www久久| 高清日韩中文字幕| 免费在线观看污网站| 欧美色欧美亚洲高清在线视频| 黄网站免费在线播放|