亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

asp:第三平臺(tái)登陸

2019-11-14 14:28:56
字體:
供稿:網(wǎng)友

 第三平臺(tái)登陸接口申請(qǐng)網(wǎng)址: http://open.51094.com/

 

文檔:

第三方合作登錄平臺(tái)使用說明

為方便更多的開發(fā)朋友,本人特將當(dāng)前市面上所有支持第三方聯(lián)合登錄的接口集為一體,以前需要多次開發(fā)才能完成的登錄現(xiàn)在只需要一次即可搞定。再也不需要因?yàn)榈却龑徍硕⒄`進(jìn)度項(xiàng)目進(jìn)度了。使用方便,操作簡單,以下為本插件的具體使用方法:

 

申請(qǐng)使用

1、首先登錄網(wǎng)站 http://open.51094.com/ 。

2、點(diǎn)擊右上角《登錄》按鈕進(jìn)行登錄,登錄成功后會(huì)自動(dòng)跳轉(zhuǎn)至管理中心。

3、進(jìn)入管理中心后點(diǎn)擊創(chuàng)建應(yīng)用按鈕,如下圖:

 

4、選擇應(yīng)用類型為《網(wǎng)站應(yīng)用》,完成后跳轉(zhuǎn)至應(yīng)用信息填寫頁面。

5、信息填寫頁面如下圖所示,按要求正確填寫應(yīng)用信息,完成后點(diǎn)擊創(chuàng)建應(yīng)用即可使用。

 參數(shù)說明:

名稱: 申請(qǐng)應(yīng)用的簡稱

詳情: 應(yīng)用的說明信息,字?jǐn)?shù)不得少于10個(gè)漢字

登錄成功回調(diào)地址:

申請(qǐng)方接收用戶信息的url , 我們以u(píng)rl+?+參數(shù)的格式通知申請(qǐng)方。切記填寫的url中不可以帶有?

支持的登錄方式:

提供自己選擇,默認(rèn)為全選。

 

創(chuàng)建應(yīng)用圖

客戶端引用(網(wǎng)站應(yīng)用)

1、在用戶中心的管理中心處可以查看到應(yīng)用需要引用的js地址,如下圖紅框所示:

 

2、在需要登錄的頁面中加入如下js代碼

<script type="text/javascript" src="http://open.51094.com/user/myscript/153dee5be21e2.html"></script>

3、在頁面標(biāo)簽中加入(<span id="hzy_fast_login"></span>)如下圖所示

 

4、成功加入后在登錄頁面即可看到相應(yīng)的登錄。如下圖所示。

 

登錄成功回調(diào)通知

2014-11-1日之后注冊(cè)用戶請(qǐng)使用方式二

方案一(已棄用)

回調(diào)方式

GET 

回調(diào)url

申請(qǐng)應(yīng)用時(shí)填寫的登錄成功回調(diào)地址

回調(diào)格式

http://url/user/hezuo.html?param=%7B%22name%22%3A%22oh%21no%22%2C%22img%22%3A%22http%3A%5C%2F%5C%2Fq.qlogo.cn%5C%2FQQapp%5C%2F100478927%5C%2F863A85B9B176E2408E05DF05D46FDB3F%5C%2F100%22%2C%22sex%22%3A0%2C%22uniq%22%3A%22qqO8HdWKMKpVI%22%2C%22from%22%3A%22qq%22%7D

參數(shù)

取得param參數(shù)內(nèi)容后先做url解碼,再進(jìn)行json解碼即可得到如下內(nèi)容:

 

name

登錄獲取的用戶名稱

img

頭像地址

sex

性別

uniq

第三方獲得的唯一碼

from

登錄來源  如 qq、weibo、renren等

 

方案二

可參考:http://test.open.51094.com/index.php

回調(diào)方式

GET

回調(diào)url

申請(qǐng)應(yīng)用時(shí)填寫的登錄成功回調(diào)地址

回調(diào)格式

http://url/user/hezuo.html?code=code

參數(shù)

取得code參數(shù)內(nèi)容后先再使用post方式請(qǐng)求:

url: http://open.51094.com/user/auth.html

POST參數(shù):

type:get_user_info

code:傳回的code值

appid:申請(qǐng)到的appid值 ( 網(wǎng)頁上點(diǎn)擊應(yīng)用名稱獲取 )

    token:申請(qǐng)到的token值 ( 網(wǎng)頁上點(diǎn)擊應(yīng)用名稱獲取 )

信息會(huì)以json串的形式返回,得到信息后json_decode( $str,true )后得到以下內(nèi)容:(獲取方式可參考附錄)

name

登錄獲取的用戶名稱

img

頭像地址

sex

性別

uniq

第三方獲得的唯一碼

from

登錄來源  如 qq、weibo、renren等

 

 

此插件為免費(fèi)插件,可用于商業(yè)用途,請(qǐng)?jiān)谑褂脮r(shí)標(biāo)注開發(fā)人。

 

 

使用注意點(diǎn):

1、引用js頁面域名與申請(qǐng)時(shí)的回調(diào)地址域名一定要相同。

2、引用的js后頁面上一定要加 id='hzy_fast_login' 的標(biāo)簽。

3、申請(qǐng)的回調(diào)url中不允許出現(xiàn)?

 

 

錯(cuò)誤代碼集:

錯(cuò)誤碼

問題

10001

用戶appid錯(cuò)誤

10002

所傳token與appid不匹配

10003

請(qǐng)求域名與注冊(cè)域名不匹配(有回調(diào)地址決定注冊(cè)域名)

time out

登錄超時(shí),需要重新登錄

 

附錄:

Php獲取信息代碼:    源碼http://test.open.51094.com/index.php

1、配置文件  open.config.php

內(nèi)容:

<?php

/**

 *@ 注冊(cè)地址 http://open.51094.com

 *@ QQ交流群:373703921

 *@ 博客地址:http://www.51094.com

 *@ 測試地址:http://open.51094.com/user/login.html

 *

 *@ author: hzy@51094.com

 *

 **/

       define( 'APPID', '申請(qǐng)時(shí)得到的appid');

       define( 'TOKEN', '申請(qǐng)時(shí)得到的token值');

?>

2、open類文件 open51094.class.php

<?php

include 'open.config.php';

class open51094{

       PRivate $appid;

       private $token;      

       private $return_uri;

       private $access_token;

       private $url = 'http://open.51094.com/user/auth.html';

 

       function __construct(){

              $this->appid = APPID;

              $this->token = TOKEN;

       }

 

       function me( $code ){

              #$this->getAccessToken();

              $params=array(

                            'type'=>'get_user_info',

                            'code'=>$code,

                            'appid'=>$this->appid,

                            'token'=>$this->token

                     );

              return $this->http( $params );

       }

       private function http( $postfields='', $method='POST', $headers=array()){

              $ci=curl_init();

              curl_setopt($ci, CURLOPT_SSL_VERIFYPEER, FALSE);

              curl_setopt($ci, CURLOPT_RETURNTRANSFER, 1);

              curl_setopt($ci, CURLOPT_CONNECTTIMEOUT, 30);

              curl_setopt($ci, CURLOPT_TIMEOUT, 30);

              if($method=='POST'){

                     curl_setopt($ci, CURLOPT_POST, TRUE);

                     if($postfields!='')curl_setopt($ci, CURLOPT_POSTFIELDS, $postfields);

              }

              $headers[]="User-Agent: 51094PHP(open.51094.com)";

              curl_setopt($ci, CURLOPT_HTTPHEADER, $headers);

              curl_setopt($ci, CURLOPT_URL, $this->url);

              $response=curl_exec($ci);

              curl_close($ci);

              $json_r=array();

              if(!empty( $response ))$json_r=json_decode($response, true);

              return $json_r;

       }

}

?>

3、返回頁面 back.php

<?php

       include 'open51094.class.php';

 

       $open = new open51094();

       $code = $_GET['code'];

       var_dump( $open->me($code) );

?>

 

JAVA獲取信息代碼:

import java.util.Date;

import java.util.UUID;

 

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

 

import org.apache.struts2.ServletActionContext;

import org.json.JSONObject;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.context.annotation.Scope;

import org.springframework.stereotype.Controller;

 

@SuppressWarnings("serial")

@Controller

@Scope("prototype")

public class UserthirdpartyAction{

       //第三方平臺(tái)提供的參數(shù)

       private static String appid="15********";

       private static String token="14**********";

 

       public String thirdlogin(){

              HttpServletRequest  request = ServletActionContext.getRequest();

              String code  = CheckNull.check(request.getParameter("code"));

              System.out.println("第三方登錄返回結(jié)果:"+code );

              if("".equals(code )||null==code ){

                     System.out.println("回調(diào)函數(shù)沒有執(zhí)行");

                     return "fail";

              }else{           

                      String url=HttpRequest.sendPost("http://open.51094.com/user/auth.html", "type=get_user_info&code="+code+"&appid="+appid+"&token="+token+"");

                System.out.println(url);

                      //解析結(jié)果         

                      JSONObject jsonObj = new JSONObject(url);

            // 得到指定json key對(duì)象的value對(duì)象

                    //解析封裝對(duì)象

                    

                     return "Redirect";

              }

             

       }

      

}

 

 

HttpRequet 類:

package wzh.Http;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
import java.util.List;
import java.util.Map;
public class HttpRequest {
    /**
     * 向指定URL發(fā)送GET方法的請(qǐng)求
     * 
     * @param url
     *            發(fā)送請(qǐng)求的URL
     * @param param
     *            請(qǐng)求參數(shù),請(qǐng)求參數(shù)應(yīng)該是 name1=value1&name2=value2 的形式。
     * @return URL 所代表遠(yuǎn)程資源的響應(yīng)結(jié)果
     */
    public static String sendGet(String url, String param) {
        String result = "";
        BufferedReader in = null;
        try {
            String urlNameString = url + "?" + param;
            URL realUrl = new URL(urlNameString);
            // 打開和URL之間的連接
            URLConnection connection = realUrl.openConnection();
            // 設(shè)置通用的請(qǐng)求屬性
            connection.setRequestProperty("accept", "*/*");
            connection.setRequestProperty("connection", "Keep-Alive");
            connection.setRequestProperty("user-agent",
                    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
            // 建立實(shí)際的連接            connection.connect();
            // 獲取所有響應(yīng)頭字段
            Map<String, List<String>> map = connection.getHeaderFields();
            // 遍歷所有的響應(yīng)頭字段
            for (String key : map.keySet()) {
                System.out.println(key + "--->" + map.get(key));
            }
            // 定義 BufferedReader輸入流來讀取URL的響應(yīng)
            in = new BufferedReader(new InputStreamReader(
                    connection.getInputStream()));
            String line;
            while ((line = in.readLine()) != null) {
                result += line;
            }
        } catch (Exception e) {
            System.out.println("發(fā)送GET請(qǐng)求出現(xiàn)異常!" + e);
            e.printStackTrace();
        }
        // 使用finally塊來關(guān)閉輸入流
        finally {
            try {
                if (in != null) {
                    in.close();
                }
            } catch (Exception e2) {
                e2.printStackTrace();
            }
        }
        return result;
    }
    /**
     * 向指定 URL 發(fā)送POST方法的請(qǐng)求
     * 
     * @param url
     *            發(fā)送請(qǐng)求的 URL
     * @param param
     *            請(qǐng)求參數(shù),請(qǐng)求參數(shù)應(yīng)該是 name1=value1&name2=value2 的形式。
     * @return 所代表遠(yuǎn)程資源的響應(yīng)結(jié)果
     */
    public static String sendPost(String url, String param) {
        PrintWriter out = null;
        BufferedReader in = null;
        String result = "";
        try {
            URL realUrl = new URL(url);
            // 打開和URL之間的連接
            URLConnection conn = realUrl.openConnection();
            // 設(shè)置通用的請(qǐng)求屬性
            conn.setRequestProperty("accept", "*/*");
            conn.setRequestProperty("connection", "Keep-Alive");
            conn.setRequestProperty("user-agent",
                    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
            // 發(fā)送POST請(qǐng)求必須設(shè)置如下兩行
            conn.setDoOutput(true);
            conn.setDoInput(true);
            // 獲取URLConnection對(duì)象對(duì)應(yīng)的輸出流
            out = new PrintWriter(conn.getOutputStream());
            // 發(fā)送請(qǐng)求參數(shù)
            out.print(param);
            // flush輸出流的緩沖
            out.flush();
            // 定義BufferedReader輸入流來讀取URL的響應(yīng)
            in = new BufferedReader(
                    new InputStreamReader(conn.getInputStream()));
            String line;
            while ((line = in.readLine()) != null) {
                result += line;
            }
        } catch (Exception e) {
            System.out.println("發(fā)送 POST 請(qǐng)求出現(xiàn)異常!"+e);
            e.printStackTrace();
        }
        //使用finally塊來關(guān)閉輸出流、輸入流
        finally{
            try{
                if(out!=null){
                    out.close();
                }
                if(in!=null){
                    in.close();
                }
            }
            catch(IOException ex){
                ex.printStackTrace();
            }
        }
        return result;
    }    
}

 

 

附上post寫法和讀取方法:

//交換獲得值得方法,post方法;

public static string Login( string code)
{
string info = string.Empty;
if (code != "" && code != null)
{
HttpHelper m_Http = new HttpHelper();
HttpItem item = new HttpItem();
// item.Method = "Post";
item.URL = "http://open.51094.com/user/auth.html";
item.Method = "POST";
item.Encoding = Encoding.GetEncoding("gbk");
item.ContentType = "application/x-www-form-urlencoded; charset=gbk";
item.Postdata = string.Format("type=get_user_info&code={0}&appid=1558be447a9ec7&token=e383684d8f0acb39d622457f361dc1dc", code);
// item.Postdata = sbTemp.ToString();

HttpResult result = m_Http.GetHtml(item);
string resultHTML = result.Html;
JObject obj = JObject.Parse(resultHTML);
string name = obj["name"].ToString();
string img = obj["img"].ToString();
string sex = obj["sex"].ToString();
string uniq = obj["uniq"].ToString();
string from = obj["from"].ToString();
info = name + "@" + img + "@" + sex + "@" + uniq + "@" + from;
}
return info;
}

 

//接受返回code頁面代碼

//接口登陸
string code = Request["code"];
string[] arr = PublicLogin.Login(code).Split('@');
if (arr.Length == 5)
{
string unip = arr[3];
string sql = string.Format("select * from bs_user where unip = '{0}'", unip);
if (CSA.DAL.DBAccess.getRS(sql).Rows.Count > 0)
{
if (CSA.DAL.DBAccess.getRS(sql).Rows[0]["PassWord"].ToString() == "" || CSA.DAL.DBAccess.getRS(sql).Rows[0]["Password"] == null)
{
string str = string.Format("location.href ='MyInformation.aspx?unip={0}'", arr[3]);
CSA.HC.Common.EchoJS(str);
}
else
{
Bs_User user = new Bs_User();
user.Unip = unip;
Factory.getUserBllInstance().loginUnip(user);
if (CurInfo.CurUser != null)
{
levelname = CurInfo.CurUser.levelName;
name = CurInfo.CurUser.Name;
sex = CurInfo.CurUser.Sex;
pwd = CurInfo.CurUser.Password;
img = CurInfo.CurUser.Pic;
}
CSA.HC.Common.EchoJS("location.href ='MyInformation.aspx'");
}
}
else
{
//生成會(huì)員code
string date = DateTime.Now.ToString("ymdHmssffff");
string usercode = getTreeNumRandomTop() + date + getTreeNumRandomEnd();
string ip = HttpContext.Current.Request.UserHostAddress;
string inssql = string.Format(@"INSERT INTO [Bs_User]([Code],[UserName],[levelName],[RealName],[Sex],[Pic],[unip],[Password],[Phone],[fxip])
VALUES('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}')", usercode, arr[0].Trim('"'), "fkt_" + usercode.Substring(3, 8), arr[0].Trim('"'), arr[2], arr[1].Trim('"'), arr[3], CSA.Security.Encrypt.getmd5("123456"), "fkt_" + usercode.Substring(3, 8), ip);
int row = CSA.DAL.DBAccess.ExecuteNonQuery(inssql);
if (row > 0)
{
Bs_User user = new Bs_User();
user.Unip = arr[3];
Factory.getUserBllInstance().loginUnip(user);

string str = string.Format("location.href ='MyInformation.aspx?unip={0}'", arr[3]);
CSA.HC.Common.EchoJS(str);
}
}
}

 


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
午夜视频在线免费播放| eeuss影院www在线观看| 精品人人视频| 欧美成人午夜激情视频| 日韩精品一页| 国产日韩av在线播放| 天堂网www在线网| 西西裸体人体做爰大胆久久久| 亚洲欧美日韩在线一区| 国产欧美一区二区精品仙草咪| 国产福利精品av综合导导航| 四虎国产成人永久精品免费| 国产成人精品亚洲777人妖| 色婷婷视频在线| 亚洲乱码国产乱码精品精| 国产视频一区二区在线| 欧美爱爱视频免费看| 亚洲视频日韩精品| 日韩午夜在线观看视频| 日韩av不卡在线播放| 亚洲动漫第一页| 成人免费毛片男人用品| 综合久久综合久久| 一区二区三区 在线观看视| 精品国产伦一区二区三| 日韩国产一二三区| 开心丁香婷婷深爱五月| 综合国产在线观看| 黄页网站一区| 久久99久久人婷婷精品综合| 一级片在线播放| 国产freexxxx性播放麻豆| 黄网在线播放| 亚洲免费观看高清完整| 91免费视频网址| 蜜臀在线免费观看| 日韩欧美亚洲一区| 日本高清视频精品| 深爱五月激情五月| 一本大道伊人av久久综合| 久久香蕉综合色| 91久久奴性调教| www.久久国产| 六月丁香婷婷久久| 一区二区三区不卡在线| 嫩草国产精品入口| 久久精品免费一区二区三区| 亚洲一区二区三区在线观看视频| 亚洲一二三四在线| av影院在线免费观看| 欧美日韩一区二区高清| 亚洲先锋影音| 欧美深夜福利视频| 欧美裸体一区二区三区| 一区精品在线播放| 小泽玛利亚一区二区免费| 欧美精品总汇| 欧美精品一区二区三区三州| 国产乱一区二区| 污污软件在线观看| 136福利第一导航国产在线| 亚洲精品视频免费看| 无码国产69精品久久久久网站| 99视频只有精品| 亚洲欧美一区二区三区久久| 国产欧美欧美| 精品乱色一区二区中文字幕| 国产精品污视频| 国产偷人妻精品一区二区在线| 日韩高清dvd碟片| 国产一级特黄毛片| 国产91绿帽单男绿奴| 免费中文字幕在线观看| 国产精品第12页| 操女生的网站| 国产精品另类一区| 亚洲视频免费观看| 日韩毛片在线一区二区毛片| 欧美美女福利视频| 懂色av蜜臀av粉嫩av分享吧最新章节| 亚洲图片中文字幕| 成人无码av片在线观看| 国产精品免费视频一区二区| 亚洲精品1234| 95在线视频| 成人国产一区二区三区精品麻豆| 久久久久亚洲av无码专区| 色老综合老女人久久久| 久久久久亚洲av无码麻豆| 国产偷窥女洗浴在线观看亚洲| 欧洲亚洲精品在线| 骚虎视频欧美| 精品动漫3d一区二区三区免费版| 在线观看国产福利视频| 欧美在线一级va免费观看| 91午夜伦伦电影理论片| 三上悠亚ssⅰn939无码播放| 午夜爽爽视频| 黄色在线一区| 国产精品一区免费在线观看| 妞干网在线免费视频| 久久这里只精品最新地址| 国产xxxx视频| 麻豆changesxxx国产| 国产成人综合亚洲欧美在| 国产精品欧美一区二区三区不卡| 国产精品久久久久久久久影视| 国产精品久久AV无码| 亚洲日本一区二区| 一级欧洲av| 国语精品一区| 精品福利在线观看| 亚洲激情啪啪| 成人午夜精品福利免费| 日韩在线小视频| 成人免费视频caoporn| 蜜桃传媒在线观看免费进入| 欧美激情a∨在线视频播放| 免费视频网站在线观看入口| 成人高清免费观看| 中文字幕亚洲乱码熟女1区2区| 三上悠亚在线资源| 国产不卡精品视男人的天堂| 免费在线黄色av| 日韩一卡二卡三卡四卡| 精品99视频| 91国产成人在线| 午夜精品一区二区三区在线视| 精品在线观看入口| 一区一区视频| 成人国产综合| 好吊的妞视频这里都有| 日韩欧美一级精品久久| av毛片久久久久**hd| 成人做爰69片免网站| 欧美一区二区观看视频| 欧美激情一级片一区二区| 久久www成人_看片免费不卡| 偷拍夫妻性生活| 911久久香蕉国产线看观看| 青青草视频在线免费直播| 成人欧美大片| 亚洲视频在线观看不卡| 台湾佬综合网| www.国产免费| 一区二区免费在线播放| 蜜臀av粉嫩av懂色av| 亚洲免费成人网| 成人精品在线观看视频| 亚洲视频精选| 欧美黑人一级爽快片淫片高清| 一区二区三区视频网| 精品视频在线观看一区二区| 欧美亚洲免费在线一区| 亚洲美女精品久久| 国产一本一道久久香蕉| 91www成人久久| 中文字幕乱码亚洲精品一区| 欧美成人精品在线观看| 日韩毛片在线| 日本成人超碰在线观看| 可以免费看黄色的网站| 欧美日韩国产v| 欧美日本在线观看| www.成人三级视频| 日韩欧美一中文字暮专区| 日本a级片在线观看| 欧美日韩亚洲第一页| 夜间精品视频| 国产在线一区二区三区播放| se01亚洲视频| 强开小嫩苞一区二区三区网站| 国色天香2019中文字幕在线观看| 91精品国产91综合久久蜜臀| 精品麻豆剧传媒av国产九九九| 国产情侣第一页| 中文字幕日韩精品在线观看| 一本大道香蕉久在线播放29| 欧美色图校园春色| 国产精品久久久久av蜜臀| 久久精品论坛| 精品国产欧美日韩| 污片视频在线免费观看| 99久久er热在这里只有精品66| 国产精品一二三在线观看| 国产乱码精品一区二区三区五月婷| 日本中文字幕不卡免费| 欧美一区二区少妇| 亚洲成人va| 麻豆成人久久精品二区三区小说| 一区二区在线免费视频| 免费yellow网站| 男人天堂2024| 久久久久黄久久免费漫画| 热久久国产精品| 在线欧美三级| 伊人精品久久久久7777| 特级xxxxx欧美| 思热99re视热频这里只精品| 久久久人成影片一区二区三区在哪下载| 免费看日韩精品| 欧美日韩国产中文精品字幕自在自线| 中文字幕日韩欧美精品在线观看| 国产中文在线视频| 亚洲欧美自偷自拍| 想看黄色一级片| 韩国一区二区三区视频| 另类图片综合电影| 欧美狂猛xxxxx乱大交3| 日本一区二区三区在线免费观看| 亚洲午夜无码久久久久| 青娱乐国产在线| 无码日韩精品一区二区免费| 后进极品白嫩翘臀在线播放| 日本深夜福利视频| 99精品视频一区二区| 国产成人午夜| 公共露出暴露狂另类av| 小早川怜子一区二区的演员表| 男人和女人做事情在线视频网站免费观看| 欧美一级免费播放| 国产午夜精品久久久久| 红桃视频在线观看一区二区| 国产91精品青草社区| 性久久久久久| 91香蕉在线视频| 羞羞网站在线免费观看| 草草视频在线免费观看| 波多野结衣之无限发射| 女人18毛片水真多免费播放| 69免费视频| 成人精品视频一区二区三区| 麻豆传媒免费在线观看| 欧美精品一区在线观看| 日韩精品福利视频| 欧美福利网址| 禁久久精品乱码| 欧美一级视频免费在线观看| 精品日韩一区二区| 国产精品二三区| 中文字幕亚洲一区二区av在线| 日韩欧美一级在线| 精品国产乱码久久久久久影片| 91精选在线| 极品魔鬼身材女神啪啪精品| 国产精品一区无码| 国产精品jvid在线观看蜜臀| 91精品久久久久久久99蜜桃| 午夜精品网站| 热久久美女精品天天吊色| 欧美日韩亚洲国产成人| 亚洲精品视频网上网址在线观看| 精品午夜电影| 亚洲色图27p| 在线观看中文av| 中文av一区特黄| 国产欧美久久久精品影院| 国产午夜久久久| 91九色蝌蚪91por成人| 菠萝蜜视频网址| 久草中文视频| 亚洲第一中文字幕| 久久精品无码中文字幕| 亚洲成人福利在线观看| 欧美激情一级精品国产| 亚洲欧洲日夜超级视频| 亚洲美女在线一区| 午夜av一区二区三区| 丝袜国产日韩另类美女| 日本手机在线视频| 99视频有精品| 亚洲国产精品久久久久婷婷老年| 欧美色欧美色| 性xxxx视频| 国产精品三级| 全国精品免费看| 日韩av最新在线| 2020久久国产精品| 18岁免费网站| 男女免费视频网站| 亚洲精品动态| 欧美蜜桃一区二区三区| www.久久久久久久久久| 91手机视频在线观看| 一区二区电影免费观看| 日韩电影在线免费观看| av中文字幕一区| 中文字幕欧美日韩va免费视频| 亚洲成人在线视频播放| 玖玖玖视频精品| 超碰在线观看91| 亚洲区一区二区| 精品国产无码一区二区三区| 日韩精品亚洲一区二区三区免费| 欧美三级中文字幕在线观看| 九色porny自拍视频在线观看| 欧亚乱熟女一区二区在线| 中文字幕第二区| 涩涩视频在线播放| 欧美自拍偷拍网| 先锋影音在av资源看片| 国产精品乱码妇女bbbb| 国产精品一区二区三区在线观| 欧美高清一级片在线观看| 欧美电影在线观看网站| 欧美午夜精品一区二区三区电影| 久久99性xxx老妇胖精品| 国产手机视频在线| 午夜日韩在线电影| 韩国成人二区| 青青草精品在线视频| 精品亚洲成av人在线观看| 丁香花在线高清完整版视频| 黑森林福利视频导航| 色琪琪久久se色| 日韩系列欧美系列| 91在线播放网站| 欧美一二三区精品| 亚洲天堂中文在线| 美女免费观看一区二区三区| 91p在线观看| 欧美少妇精品| 希岛爱理一区二区三区av高清| 亚洲午夜精品久久久久久性色| 日韩最新中文字幕电影免费看| 欧美日韩国产一区二区在线观看| 日韩午夜免费| 中文字幕一区二区三区波野结|