日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

XML-RPC使用手册

發布時間:2024/1/17 asp.net 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 XML-RPC使用手册 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

內容列表

  • Preface: About This Manual
  • Introduction to XML-RPC for C/C++
    • What is XML-RPC?
    • How Does XML-RPC For C/C++ Help?
    • More Information On XML-RPC For C/C++
  • The Xmlrpc-c Function Libraries
    • C Libraries
    • C++ Libraries
  • Utility Programs
    • xmlrpc
    • xmlrpc_dumpserver
  • Alternatives
    • Other Programming Languages
    • Apache Module
  • Appendices
    • Introductory Examples
    • About This Document

Preface: About This Manual

This is the manual for users of XML-RPC for C/C++.

The manual documents all current and past releases of XML-RPC for C/C++ and even planned future releases. Each part of the manual tells you to what releases it applies. Since the main difference between releases is that newer ones have more features, this mainly means that the description of a feature tells you in what release it was added to the package.

Compared to the more common system of distributing manuals keyed to particular releases, this makes the manual harder to use for some users (to wit, a user who has no intention of using any but one particular release), but it allows for a higher quality manual for past releases, with the same publication effort. It also allows additional uses: writing portable code and discovering when you could benefit by moving to a newer release.

For more information about the document, see About This Document.

Introduction

XML-RPC for C/C++ is a software package of programming libraries to help a C or C++ program use XML-RPC. In particular, a C/C++ programmer can easily write a program to be an XML-RPC client or server.

XML-RPC for C/C++ is also known as Xmlrpc-c.

What is XML-RPC?

XML-RPC is a standard network protocol that computers can use to talk to each other in a remote procedure call fashion. Remote procedure call essentially means that a program on one computer runs a program on another computer. But a simpler way of looking at this kind of network protocol is just that you have clients and servers. A client makes individual isolated requests of a server. A server sits around waiting for a request to arrive from some client, does what the request asks, and sends a response. It then goes back to waiting for the next request.

Here are some examples of remote procedure call (RPC) style communications:

  • There is a server that can measure atmospheric temperature. A client anywhere in the world can ask the server at any time what the temperature is. The "what temperature is it?" request and the "the temperature is..." response constitute an RPC transaction.
  • There is a server that can turn a light on or off. A client can tell the server to turn the light on. A request to turn the light on and the acknowledgement that the light has been turned on constitute an RPC transaction.
  • There is a server that knows the phone numbers of a million people. A client can supply a name and get back the phone number of the named person.
  • A network of 1000 computers is used to search millions of web pages. A dispatcher computer is a client and the rest are servers. The dispatcher sends each of the servers one URL at a time and some search terms. The server responds with yes or no as to whether the page with that URL contains the search terms. The dispatcher keeps a list of the URLs that match. Each of the requests to search a particular URL is an RPC transaction.

Here are some kinds of communication that are not RPC:

  • A long-lived connection such as an SSH login session.
  • A high volume transfer such as an FTP download.
  • A one-way transmission such as a UDP packet.
  • A dialogue such as an SMTP (mail) transaction.

The original RPC protocol is the ONC RPC protocol -- the one that NFS (the network fileystem protocol) uses. It's often called "Sun RPC" because Sun invented and promulgated it. The ONC RPC protocol is layered over UDP or sometimes TCP and uses a machine-friendly bits and bytes format, just like the TCP/IP layers under it.

XML-RPC differs from ONC RPC in that it encodes the information in the requests and responses in XML. That means they are human friendly -- XML is human-readable text, so a human can readily see what's going on from a network trace and quickly write code to create and decipher XML-RPC streams. Of course, the tradeoff is that XML-RPC uses way more network and computation resources than ONC RPC. Because XML-RPC is meant to be used for relatively small and infrequent transactions, this is thought not to matter.

In XML-RPC, the aforementioned XML is transported via HTTP (the protocol whose principal purpose is to implement web serving -- web browsing is a form of RPC, after all). HTTP is normally carried over TCP, which is carried over IP.

There are lots of servers in the world that use the XML-RPC protocol and lots of programs and programming libraries from which people can build XML-RPC-based servers and clients.

There are also other HTTP-based RPC protocols. SOAP and CORBA are the most famous. REST-RPC is a more recent entry.

For more information on XML-RPC, see The XML-RPC web site and The XML-RPC Howto. The latter includes information (with examples) on implementing XML-RPC clients and servers in languages other than C and C++, which is all that is covered in this document.

How Does XML-RPC For C/C++ Help with XML-RPC?

The function libraries in XML-RPC For C/C++ (Xmlrpc-c) let you write a program that makes XML-RPC calls (a client) or executes XML-RPC calls (a server program) at any of various levels of understanding of the XML-RPC protocol.

Here are some examples of client and server code.

More Information On XML-RPC For C/C++

This manual is a user's guide, meant to tell you how to write programs using the library. It does not cover such things as how Xmlrpc-c is developed or how to get or install it for use.

The master source of information about Xmlrpc-c is the Xmlrpc-c web site.

The Xmlrpc-c Function Libraries

This is a list of the function libraries Xmlrpc-c provides, with links to the manual for each.

There are two sets of libraries -- C and C++. You can of course use the C libraries in a C++ program, but you cannot in general mix the two -- you use either the C Xmlrpc-c facilities or the C++ Xmlrpc-c facilities. The C++ libraries depend heavily on the C libraries, but apart from having to install and link to the C libraries, you won't see that from the outside.

The C++ libraries were all new in Xmlrpc-c 1.03 (June 2005).

There is an older C++ facility, which is just a thin wrapper around the C libraries. We do not document it in this manual or recommend it, but it remains part of Xmlrpc-c for backward compatibility. This library consists in the header file xmlrpc-c/oldcppwrapper.hpp (fka XmlRpcCpp.h) and the library libxmlrpc_cpp.

C Libraries

For information common to all the libraries, see General Library Information - C

  • libxmlrpc - general XML-RPC facilities, not specific to clients or to servers, such as XML encoding and decoding and XML-RPC value processing.
  • libxmlrpc_client - facilities for implementing a client
  • libxmlrpc_server - facilities for implementing a server — facilities which are independent of the transport mechanism.
  • libxmlrpc_server_abyss - facilities for implementing a server, based on an Abyss HTTP server.
  • libxmlrpc_abyss - The Abyss server software.
  • libxmlrpc_server_cgi - facilities for implementing a server via CGI scripts under an arbitrary HTTP server (i.e. web server).
  • libxmlrpc_util - general programming facilities not specific to XML-RPC, but used by the libraries above, either internally or in their interfaces.
C++ Libraries

For information common to all the libraries, see General Library Information - C++

  • libxmlrpc++ - general XML-RPC facilities, not specific to clients or to servers, such as XML encoding and decoding and XML-RPC value processing.
  • libxmlrpc_client++ - facilities for implementing a client
  • libxmlrpc_server++ - facilities for implementing a server — facilities which are independent of the transport mechanism.
  • libxmlrpc_server_abyss++ - facilities for implementing a server, based on an abyss HTTP server.
  • libxmlrpc_server_cgi++ - facilities for implementing a server via CGI scripts under an arbitrary HTTP server (i.e. web server).
  • libxmlrpc_server_pstream++ - facilities for implementing a pseudo-XML-RPC server that uses a packet stream in place of HTTP and has multi-RPC client/server connections.

Utility Programs

Xmlrpc-c comes with a few utility programs that you can use to diagnose problems or learn about XML-RPC or Xmlrpc-c. These programs double as examples of how to use the Xmlrpc-c function libraries.

Because the utility programs are not essential to the package, the default install tools don't install them at all. The builder does build them, though, and if you build Xmlrpc-c from source, you will find them all in the tools/ directory.

You'll also find more complete documentation there.

xmlrpc

xmlrpc is a general purpose XML-RPC client program. It performs one XML-RPC call, which you describe in its command line arguments.

Example:

$ xmlrpc http://localhost:8080/RPC2 sample.add i/3 i/5 This makes a call to the XML-RPC server at the indicated URL, for the method named "sample.add", with two arguments: the integer 3 and the integer 5.

xmlrpc prints to Standard Output the result of the call, which it gets back from the server.

For details, see the manual.

String arguments look like this:

$ xmlrpc http://www.xmlrpc.com/RPC2 method_that_takes_string s/hello

If you don't include a type specifier such as "i/" or "s/", xmlrpc assumes "s/". So you can use this shortcut, equivalent to the above:

$ xmlrpc http://www.xmlrpc.com/RPC2 method_that_takes_string hello
xmlrpc_dumpserver

xmlrpc_dumpserver is a server program for analyzing XML-RPC issues. The server it runs executes any RPC by printing to Standard Output the fact that it is executing it and what its parameters. You can use this to analyze a client program.

For details, see the manual.

Here is an example of the output, which is the result of performing an RPC on the server with the following commands.

$ xmlrpc_dumpserver -port=8080 &$ xmlrpc localhost:8080 mymethod i/7 s/secondparameter

Output from server:

Running XML-RPC server on TCP Port 8080...Server has received a call of method 'mymethd'Number of parameters: 2Parameter 0:Integer: 7Parameter 1:String: 'secondparameter'

xmlrpc_dumpserver was new in Xmlrpc-c 1.49 (March 2017).

Alternatives

This section describes some alternatives to using XML-RPC For C/C++.

Other Progamming Languages

There are plenty of facilities to help you create XML-RPC clients and servers in a language other than C or C++. Search on Freshmeat.

It is worth mentioning that with some of these other-language facilities, the client or server is way slower than with XML-RPC for C/C++, because of the nature of the language. For example, I have used the Perl RPC::XML modules from CPAN and found a client program that takes 50 milliseconds to run when written with XML-RPC For C And C++ takes 2000 milliseconds to run when done with RPC::XML::Client.

In the case of Perl, there is a middle ground. The RPC::Xmlrpc_c modules from CPAN are based on Perl extensions that use the libraries of XML-RPC For C And C++. One reason RPC::XML is so slow is that it is built on top of a stack about 6 layers high, each one implemented in interpreted Perl. With RPC::Xmlrpc_c, all those layers except the top are implemented as executable machine code, efficiently compiled from C, so you have the same ease of Perl coding, without the slowness.

RPC::Xmlrpc_c is much younger than RPC::XML, so doesn't have many features, and in fact does not include any server facilities. But you could add missing features yourself (and, ideally, submit them for inclusion in the RPC::Xmlrpc_c package on CPAN, so others can use them).

RPC::Xmlrpc_c was new in December 2006 and needs XML-RPC For C And C++ Release 1.08 or better.

In other interpreted languages, the same hybrid may be possible -- replacing slow interpreted code with executable XML-RPC libraries.

Apache Module

You can make a nice XML-RPC server based on an Apache HTTP server (which may or may not simultaneously be a regular web server) using an Apache module.

There once was an Apache module based on Xmlrpc-c, so you could use the same method code as you do for other Xmlrpc-c-based implementations. It was called mod_xmlrpc and is described by a Freshmeat entry, but as of April 2009, the download link is dead.

Another module, also called mod_xmlrpc, is distributed via a Sourceforge project, but hasn't been updated since 2001, is undocumented, and looks pretty weak.

An even simpler, though less efficient and more limited way to make an XML-RPC server out of an Apache server is to do it via a CGI script. That script can be written in a variety of languages, but if you write it in C, you can use Xmlrpc-c's libxmlrpc_server_cgi library.

Other RPC Protocols

SOAP and CORBA are common alternatives to XML-RPC. Lots of expensive commercial software helps you use those. There is more to know and more you can do with them.

REST-RPC was invented in 2006 and was meant to be superior to XML-RPC for at least some things. It is easier to use in many ways than XML-RPC. Like XML-RPC, it uses HTTP, and like XML-RPC an RPC's result is XML. But unlike XML-RPC, a call is not XML. It is encoded entirely in the query part of a URL. (Example: http:/test.rest-rpc.org/?_function=GetCart&cart=1563). In the result, there are no inherent data types; server and client agree on those separately. The Xins project has more information.

JSON-RPC is like XML-RPC using JSON instead of XML, but isn't really an RPC protocol at all. It is a protocol for sending arbitrary messages back and forth between two communicants (whereas in an RPC protocol, the messages must have a request/response relationship). JSON is a way of representing typical program data structures such as integers and arrays in text, and is much simpler than XML-RPC XML elements or indeed any XML. It is far easier for a person to read a JSON-RPC message than to read an XML-RPC message. JSON-RPC was developed after XML-RPC.

Appendices

Introductory Examples

Here, to show you what Xmlrpc-c is, we present example code (almost an entire C program) for a simple XML-RPC client that exploits the Xmlrpc-c libraries, and a corresponding simple XML-RPC server.

There is not enough here for you just to copy and paste it and build the program, because there is more than Xmlrpc-c details to building a program.

The Xmlrpc-c website has a page of full examples for each of these programs, and we provide links to the relevant files along with the examples below.

But even that leaves some work for you to do, figuring out how to compile it with your tools and for your environment.

You can find complete working versions of these, with a working build system, and lots of other examples in the examples/ directory in the Xmlrpc-c source tree. You will probably have an easier time getting started with Xmlrpc-c starting from those examples than by cutting and pasting the code shown below.

In these examples, the service to be provided is adding of two numbers. You wouldn't do this with RPC in real life, of course, because a program can add two numbers without the help of a remote server. This is just to demonstrate the concept.

Table Of Contents
  • Small C Client Example
  • Small C Server Example
  • CGI C Server Example
  • Small C++ Server Example
  • Small C++ Client Example
Small C Client Example

Here is an example of C code that implements an XML-RPC client using the highest level facilities of Xmlrpc-c. This client sends a request to add 5 and 7 together to an XMLRPC-C server that is designed to provide the service of adding numbers.

int main(int const argc, const char ** const argv) {xmlrpc_env env;xmlrpc_value * resultP;int sum;char * const clientName = "XML-RPC C Test Client";char * const clientVersion = "1.0";char * const url = "http://localhost:8080/RPC2";char * const methodName = "sample.add";/* Initialize our error-handling environment. */xmlrpc_env_init(&env);/* Start up our XML-RPC client library. */xmlrpc_client_init2(&env, XMLRPC_CLIENT_NO_FLAGS, clientName, clientVersion, NULL, 0);[ handle possible failure of above ]/* Make the remote procedure call */resultP = xmlrpc_client_call(&env, url, methodName,"(ii)", (xmlrpc_int32) 5, (xmlrpc_int32) 7);[ handle possible failure of above ]/* Print out the sum the server returned */xmlrpc_parse_value(&env, resultP, "i", &sum);[ handle possible failure of above ]printf("The sum is %d\n", sum);/* Dispose of our result value. */xmlrpc_DECREF(resultP);/* Clean up our error-handling environment. */xmlrpc_env_clean(&env);/* Shutdown our XML-RPC client library. */xmlrpc_client_cleanup();return 0; }

See the complete source file in the Xmlrpc-c source tree.

Small C Server Example

Now, here is code that implements an XML-RPC server that provides the number-adding service from the previous section.

#include <xmlrpc.h> #include <xmlrpc_server.h> #include <xmlrpc_server_abyss.h>static xmlrpc_value *sample_add(xmlrpc_env * const envP,xmlrpc_value * const paramArrayP, void * const serverContext) {xmlrpc_int32 x, y, z;/* Parse our argument array. */xmlrpc_parse_value(envP, paramArrayP, "(ii)", &x, &y);if (envP->fault_occurred)return NULL;/* Add our two numbers. */z = x + y;/* Return our result. */return xmlrpc_build_value(envP, "i", z); }int main (int const argc, const char ** const argv) {xmlrpc_server_abyss_parms serverparm;xmlrpc_registry * registryP;xmlrpc_env env;xmlrpc_env_init(&env);registryP = xmlrpc_registry_new(&env);xmlrpc_registry_add_method(&env, registryP, NULL, "sample.add", &sample_add, NULL);serverparm.config_file_name = argv[1];serverparm.registryP = registryP;printf("Starting XML-RPC server...\n");xmlrpc_server_abyss(&env, &serverparm, XMLRPC_APSIZE(registryP)); return 0; }

?

See the complete source file in the Xmlrpc-c source tree.

There's a lot going on under the covers of this example server. What the xmlrpc_server_abyss() statement does is run a whole HTTP server. The function doesn't normally return. The HTTP server runs the abyss web server (i.e. HTTP server) program. abyss is like the more serious web server program apache, but on a much smaller scale. An XML-RPC call is just an HTTP POST request, so while abyss was not designed specifically for XML-RPC, it provides much of the function an XML-RPC server needs.

The only way this Abyss web server differs from one you would run to do traditional web serving is that it contains a special handler to call Xmlrpc-c functions to handle an XML-RPC POST request. The server calls that handler for any URI that starts with "/RPC2", which is what XML-RPC URIs conventionally have.

While abyss is distributed independently of Xmlrpc-c, Xmlrpc-c contains an old copy of it, somewhat modified. So you don't need to install abyss separately.

In this example, you have to provide an example abyss configuration file as a program argument. The main thing you need that file for is to specify on which TCP port the server will listen. A single "Port 8080" statement is probably enough. (I say 8080, because in the example client code above, I hardcoded 8080 as the port in the URI the client uses).

There are lots of other ways to use Xmlrpc-c libraries to build XML-RPC clients and servers. The more code you're willing to write, and the more involved in the guts of the protocol you want to get, the more control you can have.

CGI Server Example
#include <xmlrpc.h> #include <xmlrpc_server_cgi.h>static xmlrpc_value *sample_add(xmlrpc_env * const env, xmlrpc_value * const param_array, void * const user_data) {xmlrpc_int32 x, y, z;/* Parse our argument array. */xmlrpc_decompose_value(env, param_array, "(ii)", &x, &y);if (env->fault_occurred)return NULL;/* Add our two numbers. */z = x + y;/* Return our result. */return xmlrpc_int_new(env, z); }int main(int const argc, const char ** const argv) {/* Process our request. */xmlrpc_cgi_init(XMLRPC_CGI_NO_FLAGS);xmlrpc_cgi_add_method_w_doc("sample.add", &sample_add, NULL,"i:ii", "Add two integers.");xmlrpc_cgi_process_call();xmlrpc_cgi_cleanup();return 0; }

See the complete source file in the Xmlrpc-c source tree.

About This Document

This document is part of the XML-RPC For C/C++ project. It is the main user documentation for the project.

The master copy of this document lives at http://xmlrpc-c.sourceforge.net/doc/. The HTML copy there is the original source -- it is hand edited.

This is a living document. It gets updated continuously, both to document changes in Xmlrpc-c and to improve the documentation. It documents all current and past, and, where possible, future releases of Xmlrpc-c. There is no benefit to keeping an old copy of the document to use with an old copy of the code.

Bryan Henderson wrote and published the first draft of this document in November 2004, as an entirely original work. Bryan placed it in the public domain.

Bryan enthusiastically maintains the document. If you have a problem with it, from typos to missing topics, please email Bryan at bryanh@giraffe-data.com.

轉載于:https://www.cnblogs.com/tuhooo/p/8888004.html

總結

以上是生活随笔為你收集整理的XML-RPC使用手册的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

色激情五月 | 欧美动漫一区二区三区 | 久久国产午夜精品理论片最新版本 | 免费一级日韩欧美性大片 | 丁香av| 91视频在线看 | 成人午夜电影久久影院 | 不卡av在线免费观看 | 中文av一区二区 | 插插插色综合 | 国产视频一级 | 欧美日韩久久不卡 | 干av在线 | 欧美做受xxx | 国产在线观看黄 | 国产成人免费网站 | 日韩一级网站 | 日韩午夜在线观看 | 国产女做a爱免费视频 | 中文字幕有码在线观看 | 人人爽人人射 | 波多野结衣亚洲一区二区 | 亚洲国产一二三 | 色夜影院| 日韩视频中文字幕在线观看 | 在线电影播放 | 天天干天天摸天天操 | 97超碰国产精品女人人人爽 | www.夜夜爱 | 美女露久久| 成人免费av电影 | 福利视频一区二区 | 婷婷色中文网 | 日韩精品91偷拍在线观看 | 国产在线精品国自产拍影院 | 天天操天天摸天天射 | 免费毛片一区二区三区久久久 | 久草国产在线观看 | 久久久国产一区二区三区 | 亚洲一区二区三区四区精品 | 一本—道久久a久久精品蜜桃 | 国产婷婷vvvv激情久 | 天天综合中文 | 国产色婷婷在线 | 日韩毛片在线播放 | 免费观看的av | 天天插狠狠插 | 国产精品尤物 | 国产精品淫 | 久久精品二区 | 天天色天天操天天爽 | 欧美人体xx | 夜夜天天干 | av在线电影播放 | 中文字幕中文字幕在线一区 | 国产精品毛片一区二区在线看 | 丁香网五月天 | 亚洲丝袜一区 | 天天操天天操天天操天天操天天操天天操 | 免费成人av网站 | 久久精品99国产精品亚洲最刺激 | 97香蕉视频 | 香蕉视频在线观看免费 | 美女网站视频一区 | 亚洲91中文字幕无线码三区 | 久久精品波多野结衣 | 久久不卡免费视频 | 黄色毛片一级 | 亚洲午夜在线视频 | 婷婷丁香九月 | 综合色天天 | 日本91在线| 天天爽天天碰狠狠添 | 99精品免费久久久久久日本 | 国产免费亚洲 | 日韩午夜大片 | 91成人看片 | 国产免费亚洲高清 | 一级片在线 | 成人午夜在线电影 | 日韩激情久久 | 99999精品 | 成人久久久电影 | 四虎永久免费网站 | 日韩免费高清在线观看 | 成年人毛片在线观看 | 欧美成人高清 | 午夜美女福利 | 欧美日韩视频在线观看一区二区 | 日韩在线观看一区 | 免费在线观看成人av | 91精品一区国产高清在线gif | www视频免费在线观看 | 日韩sese| 成人性生交大片免费观看网站 | 中文字幕美女免费在线 | 97成人在线免费视频 | 国产黄色片免费观看 | 国产美女在线精品免费观看 | 国产69久久久 | 狠狠色丁香久久婷婷综合丁香 | 激情综合国产 | 奇人奇案qvod | 91麻豆精品久久久久久 | 久久99日韩 | 久久久久久久久毛片 | 六月久久婷婷 | 日韩视频在线不卡 | 久久久不卡影院 | 国产小视频在线看 | www五月| 黄网在线免费观看 | 国产综合精品一区二区三区 | 亚洲另类人人澡 | 色激情在线 | 久久久久亚洲精品男人的天堂 | 国产美女永久免费 | 亚洲综合色网站 | 日日夜夜精品视频 | 久久久久在线观看 | 黄色亚洲 | 国产精品麻豆三级一区视频 | 制服丝袜天堂 | 懂色av懂色av粉嫩av分享吧 | 一区二区三区不卡在线 | 一区二区三区在线视频观看58 | www.久久久久| 久草在线免费新视频 | 国内久久久久 | 91在线91拍拍在线91 | 91在线麻豆| 国产美女主播精品一区二区三区 | 人人爱在线视频 | 天天干天天操人体 | 中文字幕免费在线 | 日p视频 | 欧美日韩视频在线观看一区二区 | 尤物97国产精品久久精品国产 | 久久av中文字幕片 | 亚洲乱码中文字幕综合 | 人人插人人爱 | 久久久久亚洲a | 日韩电影在线观看一区二区三区 | 人人射人人爱 | 国产精品久久久久久久久久三级 | 97在线资源 | 久久久久久久久久福利 | 日韩在线视频免费看 | 国产久草在线 | 国产精品久久久久永久免费看 | 国产日韩精品一区二区在线观看播放 | 久久久久久久久久毛片 | 欧美 日韩 久久 | 999成人精品 | 国产一在线精品一区在线观看 | 在线观看av中文字幕 | 中文字幕色网站 | 久久综合精品国产一区二区三区 | 国产视频1区2区3区 久久夜视频 | 美女视频网| 91视频麻豆视频 | 日韩字幕在线观看 | 日韩电影在线视频 | av日韩精品| 高清免费av在线 | 香蕉影院在线 | 99色在线播放 | 欧美日韩国产一二 | 最近中文字幕免费 | 国产毛片aaa| 免费中文字幕视频 | 亚洲国产成人在线观看 | 色噜噜狠狠色综合中国 | 欧美污网站 | 在线小视频你懂得 | 99精品视频在线观看视频 | 久久艹艹| 免费观看性生活大片 | 中文字幕黄色网 | 成人在线视频免费 | 一级黄色片网站 | www.久久视频| 97超碰在线免费 | 91九色视频在线播放 | 天堂av官网| 天堂av在线 | 国产精品毛片一区二区三区 | www黄免费| 不卡视频一区二区三区 | 亚洲成人免费在线 | 亚洲三级在线 | 日韩专区在线观看 | 日韩视频中文字幕在线观看 | 亚洲一级二级三级 | 91免费视频国产 | 永久免费看av | 中文字幕有码在线 | 五月天电影免费在线观看一区 | 亚洲一区二区三区四区精品 | 久久欧美在线电影 | 激情综合五月天 | 日韩免费一区二区三区 | 欧美性精品 | 久久久亚洲影院 | 精品视频 | 久草久热 | 人人澡人人模 | 高清av在线 | 久久精品1区 | 激情综合网天天干 | 91精品在线观看入口 | 天天射夜夜爽 | aa级黄色大片 | 国产 成人 久久 | av在线在线 | 日日夜夜免费精品 | 久久美女精品 | 免费国产在线精品 | 在线电影av | 99久久99视频 | 精品一区电影国产 | 久草在线资源视频 | 特级黄录像视频 | 国产一级做a爱片久久毛片a | 中文字幕资源网在线观看 | 91精彩在线视频 | 色全色在线资源网 | 亚洲精品国精品久久99热 | 91人人爽人人爽人人精88v | 久久午夜电影网 | 91丨九色丨勾搭 | 九九视频精品免费 | 国产剧情一区二区在线观看 | 天天做日日做天天爽视频免费 | 久久久久国产精品厨房 | 久久婷婷亚洲 | www.天天成人国产电影 | 国产.精品.日韩.另类.中文.在线.播放 | 中文字幕电影在线 | 一区二区精品久久 | 亚洲夜夜爽 | 日本女人的性生活视频 | 久久国产精品小视频 | 成人永久在线 | 成年人免费电影 | 久久手机看片 | 国产亚洲人成网站在线观看 | 精品一区二区av | av福利免费| www日韩在线观看 | 91精品国产自产91精品 | 特片网久久 | 97电影在线| 国产探花在线看 | 久久精品久久精品久久 | 国产一区高清在线 | a国产精品 | 97超碰免费在线观看 | 99精品国产福利在线观看免费 | 日韩高清激情 | 亚洲精品在线播放视频 | 欧美一级片在线免费观看 | 久久久久久久久免费 | 免费在线观看一级片 | 精品一二区 | 国产精品99久久免费黑人 | 日韩免费看 | 国产又黄又猛又粗 | 五月婷婷色综合 | 国产在线观看99 | 精品一二三四视频 | 黄色亚洲大片免费在线观看 | 午夜黄色影院 | 国产精品99久久久久的智能播放 | 成人作爱视频 | 久久精品波多野结衣 | 97精品国产手机 | 国产精品美女久久久 | 欧美性黑人 | 亚洲美女在线一区 | 免费高清在线视频一区· | 在线观看免费av网站 | 五月婷婷丁香综合 | 精品在线不卡 | 日韩免费视频播放 | 96视频免费在线观看 | 一级免费av | 国产成人亚洲在线观看 | 国产中文字幕视频在线观看 | 成人av在线亚洲 | 国产精品久久久久一区二区三区 | www夜夜 | 亚洲天堂网在线视频观看 | 国产亚洲欧美精品久久久久久 | 欧美日韩视频在线观看一区二区 | 成人av动漫在线 | 奇米影视8888在线观看大全免费 | 精品国产区在线 | 激情视频久久 | 久久96国产精品久久99漫画 | 九九热精品视频在线观看 | 国产麻豆剧传媒免费观看 | 亚洲综合国产精品 | 久久精品这里热有精品 | 天天干,天天射,天天操,天天摸 | 国产免费观看高清完整版 | 国产高清 不卡 | 精品在线二区 | 在线观看国产高清视频 | 349k.cc看片app| 四虎永久免费在线观看 | 国产精品国产亚洲精品看不卡 | 日韩一级成人av | 国产精品久久久久久久毛片 | 97在线观看视频国产 | 欧美黄污视频 | 国产精久久久久久妇女av | 日韩视频在线观看视频 | 久久成人综合 | 国产国语在线 | 天天摸天天干天天操天天射 | 欧美一区二区三区在线看 | 久久国色夜色精品国产 | 99综合电影在线视频 | 婷婷伊人五月天 | 97操操操 | 国产精品美乳一区二区免费 | 日本aa在线 | 夜夜躁日日躁狠狠久久88av | 久久精品欧美一区 | 久久久久一区二区三区 | 国产不卡毛片 | 国产3p视频 | 色视频在线看 | 欧美一级片免费在线观看 | 国产电影一区二区三区四区 | 91精品电影 | 日韩欧美在线高清 | www.亚洲在线 | 国产在线观看av | 久久爱资源网 | 国产精品久久久久久一区二区 | 奇米网444| 欧美成人性战久久 | 中字幕视频在线永久在线观看免费 | 激情综合网婷婷 | 久久国内精品 | 亚洲综合欧美日韩狠狠色 | 久久视频中文字幕 | 一区二区三区免费网站 | 免费在线国产 | 中文字幕888 | 一区二区三区在线免费观看 | 国产免费xvideos视频入口 | 精品视频免费久久久看 | 最新亚洲视频 | 蜜臀精品久久久久久蜜臀 | 国产白浆在线观看 | 久久久久久高清 | 韩日精品视频 | 中文亚洲欧美日韩 | aaawww| 亚洲成人av片在线观看 | 国产高清在线免费视频 | 国产视频二 | 色噜噜在线观看 | 国产不卡av在线 | 国产在线91精品 | 亚洲激情网站免费观看 | 97超碰人人澡人人爱 | 九九视频免费观看视频精品 | 日本一区二区三区视频在线播放 | 国产精品va在线播放 | 国产亚洲综合在线 | 视频三区在线 | 在线看日韩av | 日韩在线 | 在线电影a | 日韩欧美在线高清 | 人人干人人搞 | 激情av资源网 | 91在线播放综合 | 国产一级精品视频 | 欧美在线1区 | 久草在线视频首页 | 97人人澡人人爽人人模亚洲 | 欧美另类xxxxx | 午夜精品一区二区三区在线 | 99热国产在线 | 99爱视频在线观看 | 狠狠狠狠狠狠操 | 久久大香线蕉app | 日韩精品一区二 | 久久婷婷国产 | 久久久国产精品视频 | 精品国产亚洲日本 | 性色av免费看 | 日本久久久久久 | av色图天堂网 | 超碰人人99| 在线免费观看黄色 | 日韩成人黄色 | 少妇激情久久 | 亚洲干视频在线观看 | 久久视频精品在线 | 国产乱码精品一区二区蜜臀 | 久久久久国产一区二区三区四区 | 成人久久久久久久久久 | 久久免费福利 | 日韩精品免费一区二区在线观看 | 国产成人福利在线 | 91色一区二区三区 | 精品久久一级片 | 超碰日韩 | 深夜福利视频在线观看 | 久久97久久| 色综合久久久久综合99 | 91黄色在线观看 | 伊人国产在线观看 | 亚洲视频 中文字幕 | 亚洲国产成人精品在线 | 亚洲综合导航 | 偷拍精偷拍精品欧洲亚洲网站 | 亚洲一区尤物 | 久久视频在线免费观看 | 久久综合五月天 | 午夜av免费| 日色在线视频 | 九九九九九国产 | 天天曰天天 | 久久久国产精品人人片99精片欧美一 | 狠狠狠色丁香婷婷综合久久88 | 精品久久久久久久久久 | 97超碰人人看 | 九九九在线观看视频 | 九九九视频在线 | 久久精品男人的天堂 | 亚洲免费高清视频 | 久久精品99视频 | 99精品观看 | 日韩欧美一区二区三区视频 | 久久免费公开视频 | 婷婷成人综合 | 国产视频精品视频 | 国产亚洲视频中文字幕视频 | 久久综合丁香 | 久久深夜福利免费观看 | 欧美日韩xxxxx | 97国产大学生情侣酒店的特点 | 亚洲国产精品久久久久久 | 欧美专区亚洲专区 | 狠狠色狠狠色合久久伊人 | 午夜av日韩 | 午夜精品久久久久久久久久久 | 精品人人人| 久久精品成人 | 中文字幕av全部资源www中文字幕在线观看 | 91免费观看国产 | 91av视频播放 | 亚洲三级国产 | 久久天天综合网 | 国产精品久久久久久69 | 爱爱av网 | 国产精品成人一区二区 | 九九热久久久 | 亚洲黄色软件 | 国产精品久久中文字幕 | 久久精品2 | 综合久久久久久久久 | 在线视频一二三 | 亚洲尺码电影av久久 | 国产在线视频导航 | 最新av电影网址 | 99综合电影在线视频 | 91成人天堂久久成人 | 99精品在线免费观看 | 久草在线观 | 人人看人人爱 | 91在线视频播放 | 色综久久 | 四虎影视精品成人 | 欧美黑人性爽 | 国产精品1区2区3区在线观看 | 亚洲欧美视频一区二区三区 | 国产91精品高清一区二区三区 | 97超碰香蕉| 国产午夜小视频 | 视频国产 | 免费久久久久久久 | 亚洲传媒在线 | 国产高清绿奴videos | 在线观看一区二区视频 | 黄色a视频 | 激情久久伊人 | 99国产一区二区三精品乱码 | 久久99精品国产麻豆婷婷 | 天天搞天天干 | 91成人欧美 | 欧美va天堂va视频va在线 | 精品不卡视频 | 91伊人久久大香线蕉蜜芽人口 | 黄网站www| 在线国产欧美 | 天天插日日插 | 丁香视频全集免费观看 | 午夜精品福利在线 | 婷婷婷国产在线视频 | 99精品视频一区二区 | 成人h视频在线播放 | 日韩在线观看视频网站 | 玖玖在线播放 | 人人爱人人爽 | 在线精品观看 | 欧美一级久久久久 | 国产高清精品在线 | 国产黄在线 | 久久精品视频在线看 | 91网在线看 | 亚洲国产视频a | 五月婷社区 | 国产123区在线观看 国产精品麻豆91 | 四虎影视成人永久免费观看亚洲欧美 | 精品欧美一区二区三区久久久 | 福利视频区| 国产精品欧美精品 | 99在线精品免费视频九九视 | 日韩在线电影一区二区 | 亚洲免费观看在线视频 | www.一区二区三区 | 久久高清视频免费 | 日韩欧美视频免费在线观看 | 在线免费av网站 | 久久久久国产一区二区三区四区 | 免费高清在线视频一区· | 久草青青在线观看 | 一级特黄av| 国产成人精品一区二区三区网站观看 | 亚洲一级电影 | 中文字幕在线播放一区 | 日韩精品中文字幕在线不卡尤物 | 国产一级不卡视频 | 亚洲深爱激情 | 成人一级视频在线观看 | 久久久综合香蕉尹人综合网 | 中文在线字幕免费观 | 精品国产一二三四区 | 久久国产精品一区二区三区四区 | 91成人精品观看 | 五月婷综合| 91香蕉视频 mp4 | 免费久久网 | 亚洲一级二级 | 亚洲成人黄色网址 | 色综合久| 成人亚洲精品久久久久 | 玖玖在线资源 | 国产又粗又猛又黄 | 91精品国自产在线观看欧美 | 精品国精品自拍自在线 | 成人资源在线播放 | 日韩成人免费在线 | 91伊人久久大香线蕉蜜芽人口 | 国产精品成 | 91麻豆传媒 | 亚洲黄色免费在线 | 麻豆视频免费观看 | 国产不卡视频在线播放 | 亚洲片在线资源 | 涩涩成人在线 | 国产99久久久精品 | 午夜视频一区二区 | 欧美成人影音 | 天天插天天操天天干 | 国产高清小视频 | 日韩欧美网址 | 国产精品久久久久久久免费大片 | 91久久久国产精品 | 日韩av中文在线 | 久久久一本精品99久久精品66 | 成人国产一区二区 | 97av免费视频 | 在线观看免费一级片 | 99热国产在线观看 | 亚洲精品久久久久中文字幕m男 | 中文字幕在线播放日韩 | 在线免费观看麻豆视频 | 丁香花中文字幕 | 日韩啪啪小视频 | 蜜桃av综合网| 国产精品美女久久久久久久久久久 | 成人黄色大片在线免费观看 | 九九久| 国产三级精品三级在线观看 | 97在线精品视频 | 在线观看午夜 | 亚洲午夜精品久久久 | 午夜精品久久久久久久爽 | 国产福利一区二区三区在线观看 | 中文字幕在线观看视频一区二区三区 | 亚洲高清精品在线 | 久久国产免费看 | 天天色天天干天天色 | a资源在线 | 亚洲日本va在线观看 | 欧美成人精品在线 | 欧美精品v国产精品v日韩精品 | 911久久香蕉国产线看观看 | 久草在线手机观看 | 少妇av网| 麻豆免费视频网站 | 521色香蕉网站在线观看 | 免费看的黄色 | 夜夜干夜夜 | 97在线视频免费播放 | 日韩在线短视频 | www.神马久久 | 欧美精品国产综合久久 | av日韩不卡| 国产综合精品久久 | 手机看片福利 | 日韩av资源在线观看 | 超碰在线日韩 | 又爽又黄在线观看 | 97超级碰碰碰视频在线观看 | 这里只有精品视频在线 | 中文永久免费观看 | 欧美污污网站 | 日韩在线视频网站 | 成人av一二三区 | 欧美一区,二区 | 欧美视频在线观看免费网址 | 91丨九色丨国产在线 | 国产精品毛片一区视频播不卡 | 国产精品一区二区三区观看 | 国产精品久久久久久久久久久久午夜片 | 中文字幕丝袜 | 中文字幕在线观看视频一区二区三区 | 国产一区成人在线 | 日韩在线观看视频网站 | av不卡在线看 | 中文字幕电影在线 | 天天拍天天操 | 伊人婷婷激情 | 亚洲色图色| 99在线视频网站 | 国产中文字幕在线 | 97在线免费观看视频 | 亚洲天天草 | 99人成在线观看视频 | 国产精品久久久久aaaa九色 | 91视频黄色| 日韩高清不卡在线 | 国产在线免费观看 | 日日夜精品 | www在线观看国产 | 99久久久久国产精品免费 | 综合激情av| 中文字幕视频网站 | 婷婷精品国产一区二区三区日韩 | 婷婷色吧 | 视频91| 日韩爱爱网站 | 午夜精品福利一区二区 | 日韩国产欧美视频 | 亚洲视频六区 | 免费日韩 精品中文字幕视频在线 | 91免费黄视频 | 色婷婷狠狠五月综合天色拍 | 色天天综合网 | 国产精品99蜜臀久久不卡二区 | 成人一级片视频 | 五月天久久婷婷 | 国产精品久久久久一区二区三区共 | 久久久穴| 久久99国产精品 | adn—256中文在线观看 | 国产视频在线观看一区 | 黄色软件视频大全免费下载 | 欧美视频xxx | 免费看三级网站 | 99久高清在线观看视频99精品热在线观看视频 | 欧美亚洲成人免费 | 欧美一二三视频 | 精品国产一区二区三区在线 | 丁香五婷| 五月天色中色 | 成人黄色视 | 激情小说网站亚洲综合网 | 香蕉网在线观看 | 97在线免费| 99爱这里只有精品 | 成年人毛片在线观看 | 人人爱人人舔 | 日韩一区二区三区免费视频 | 欧美成人性网 | 九九视频在线观看视频6 | 久久特级毛片 | 精品视频在线视频 | 精品一区二区在线播放 | 国产又粗又硬又爽的视频 | 久久综合九九 | 黄色成年片 | 日韩在线观看a | 麻豆av一区二区三区在线观看 | 在线免费色| 国产视频亚洲 | 国产精品99久久久久久久久 | 66av99精品福利视频在线 | 在线小视频 | 久久国产精品免费 | 国产精品久久久久久一二三四五 | 国产精品久久久久久久久久直播 | 国产美女精品视频 | 久久社区视频 | 超碰在线人人97 | 国产视频一区在线免费观看 | 在线 国产 亚洲 欧美 | 探花视频免费观看高清视频 | 91丨九色丨蝌蚪丰满 | 国产在线第三页 | 久草电影在线 | www.色爱| 99精品国产免费久久久久久下载 | 日韩欧美国产激情在线播放 | 色婷婷在线播放 | 国产伦精品一区二区三区无广告 | 超碰公开在线观看 | av888.com| av丁香| 国内综合精品午夜久久资源 | 国产精彩视频 | 超碰在线人人97 | 国产 日韩 欧美 自拍 | 精品一二三四五区 | 精品国产一区二区三区在线观看 | 久久影视精品 | 国产在线a视频 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | 2020天天干天天操 | 久草视频一区 | 又黄又爽又刺激视频 | 亚洲视频久久 | 国精产品999国精产品岳 | 日韩精品一区在线观看 | 成人a在线观看高清电影 | 亚洲丁香久久久 | 国产精品欧美久久久久无广告 | 麻豆91在线观看 | 精品96久久久久久中文字幕无 | 欧美日韩一区二区在线观看 | 国产高清av | 97av视频在线观看 | 首页中文字幕 | 亚洲免费av网站 | 国产麻豆视频在线观看 | 成年人黄色免费视频 | 91视频91自拍 | 国产精品激情在线观看 | 天天干天天操天天爱 | 亚洲精品美女久久久久 | 成人黄色电影视频 | 免费观看性生活大片 | 久久久久久久看片 | 在线国产精品视频 | 国产精品久久久久久久久久东京 | 久草在线电影网 | 欧美精品一区二区在线观看 | 国产999视频 | 亚洲精选视频免费看 | 久草在线资源观看 | 亚洲精品理论片 | 亚洲最大色| 黄a在线看 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 99免在线观看免费视频高清 | 国产黄色一级片 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | 五月婷婷丁香在线观看 | 西西44人体做爰大胆视频 | 亚洲二区精品 | 天天操福利视频 | 国产偷国产偷亚洲清高 | 亚洲国产午夜 | 欧美一级艳片视频免费观看 | 人人玩人人添人人澡超碰 | 免费在线观看视频a | 99高清视频有精品视频 | 日韩乱码中文字幕 | 中文字幕在线影视资源 | 久久情爱 | 欧美一区二区视频97 | 一区二区三区四区免费视频 | 亚洲精品久久久蜜桃 | 毛片1000部免费看 | 亚洲日本精品视频 | 99久久超碰中文字幕伊人 | 欧美污在线观看 | 中文字幕av在线电影 | 亚洲精品国产精品国自产在线 | 国产精品一区二区三区久久 | 久久不射电影网 | 日韩国产精品一区 | 精品人人人 | 国产亚洲一区二区在线观看 | 97电影院网 | 国产精品久久久久久久久久不蜜月 | 天天干天天拍天天操 | 免费视频97 | 在线中文字幕播放 | 久久婷婷国产 | 日韩一级黄色片 | 少妇性xxx| www.五月婷婷 | 国产精品久久一 | 天天综合网在线 | 在线观看中文字幕一区 | 日韩精品一区二区三区免费观看视频 | 午夜久久久久久久久久影院 | 日韩专区一区二区 | 国产精品毛片一区二区 | 亚洲精品玖玖玖av在线看 | 国产精品国产自产拍高清av | 999电影免费在线观看 | 国产美女视频 | 久草资源免费 | 最新色视频 | 黄色美女免费网站 | 日韩成人邪恶影片 | 欧洲亚洲国产视频 | 91精品久久久久久综合五月天 | 欧美视频国产视频 | 国产剧情一区二区在线观看 | 97碰碰视频 | 亚洲黄色一级视频 | 日日夜夜噜噜噜 | 五月天伊人网 | 最近的中文字幕大全免费版 | 国产成人av网 | 欧美日韩伦理一区 | 久久国产一区二区 | 中文字幕在线观看你懂的 | 亚洲国产电影在线观看 | 中文在线资源 | 国产精品毛片网 | 国产69精品久久久久久 | 国产91精品看黄网站在线观看动漫 | 999视频网 | 国产专区一 | 久久精品99国产精品日本 | 国产伦精品一区二区三区高清 | 成人片在线播放 | 日韩有码中文字幕在线 | 久久国产精品99精国产 | 国产黄色网 | av丝袜制服 | 国产一区二区精品在线 | 97国产精品一区二区 | 久久婷婷丁香 | 色婷婷电影网 | 91精品国产福利在线观看 | 久久久久久久免费 | 91香蕉视频黄 | 亚洲精品456在线播放 | 99热在线观看免费 | 久久国产一二区 | www.国产毛片| 国产精品久久久区三区天天噜 | 日韩欧美一区二区三区视频 | 色 免费观看 | 激情网在线视频 | 亚洲日韩欧美一区二区在线 | 在线直播av | 久草视频播放 | 午夜色婷婷 | 国产精品麻豆免费版 | 91理论片午午伦夜理片久久 | 国内精品一区二区 | 在线免费av播放 | 日韩理论电影在线观看 | 色噜噜噜噜 | 九九av| 久久精品区| 成年人在线视频观看 | 亚洲精品福利在线 | 在线免费看黄色 | 中文字幕在线观看免费 | 午夜精品一区二区三区免费视频 | 欧美久久久久久 | 久久久国产精品亚洲一区 | 免费成人黄色 | 亚洲欧洲一级 | av片在线观看免费 | 天天射天天射天天射 | av永久网址 | 色狠狠婷婷| 青青啪| 六月婷婷色| 亚洲精品国产视频 | 亚洲视频综合在线 | 91最新国产| 8090yy亚洲精品久久 | 91大神在线观看视频 | 成人h视频在线播放 | 欧美午夜寂寞影院 | 在线国产91 | 日韩videos | 日韩欧美亚州 | 狠狠操导航 | 在线黄频| 综合国产在线 | 久久精品亚洲综合专区 | 麻豆国产露脸在线观看 | 亚洲干| 国产综合香蕉五月婷在线 | 久久午夜色播影院免费高清 | 麻豆91视频 | 日本资源中文字幕在线 | 激情婷婷综合网 | 在线视频 国产 日韩 | a级片韩国 | 国产精品综合在线观看 | 久久96国产精品久久99软件 | 天天干,天天操 | 日韩电影久久 | 欧美一二三区播放 | 不卡电影免费在线播放一区 | 狠狠色丁香婷婷综合视频 | 日本动漫做毛片一区二区 | 国产精品久久久久久久久久久免费 | 欧美射射射| 精品在线免费观看 | 精品在线观看免费 | 中文字幕一二三区 | 亚洲国产精品视频在线观看 | 五月激情姐姐 | 久久久久久久久影视 | 久草视频资源 | 九九免费精品视频在线观看 | 欧美高清视频不卡网 | 国产一区二区精品久久 | 91高清在线| 亚洲一级久久 | 欧美一级片免费观看 | 免费av观看 | 免费a v在线 | 亚洲成av人片一区二区梦乃 | 超碰在线日本 | 精品视频免费播放 | 狠狠狠狠狠色综合 | 黄色大片av | 五月婷婷网站 | 久久av福利 | 中文字幕亚洲不卡 | 开心综合网 | 国产成人精品午夜在线播放 | 欧美狠狠色 | 欧美一级艳片视频免费观看 | 久久欧美精品 | 五月婷婷香蕉 | 一级黄色片在线 | 97天天综合网 | 亚洲天堂网在线视频观看 | 日日夜夜天天射 | 丁香资源影视免费观看 | 二区视频在线观看 | 三级av网站 | 久久你懂得 | 91网址在线观看 | 亚洲黄色在线免费观看 | 久久久伦理 | 五月婷婷操| 国产精品黑丝在线观看 | 五月婷婷影院 | 一区二区三区观看 | 日本在线观看一区 | 久久精品官网 | 亚州av一区 | 国产成人免费网站 | 2019天天干夜夜操 | 欧美精品在线视频 | 这里只有精彩视频 | 日韩久久久久久久久久 | 99婷婷狠狠成为人免费视频 | 美女网站一区 | 色综合天天天天做夜夜夜夜做 | 久久久久国产一区二区三区四区 | 亚洲欧美日韩一二三区 | 96av麻豆蜜桃一区二区 | 91理论片午午伦夜理片久久 | 国产一级黄色免费看 | 成人久久久电影 | 久青草影院 | 国产香蕉久久精品综合网 | 超碰免费在线公开 | 精品一区 在线 | 免费看一级一片 | 国产在线色站 | av线上免费观看 |