CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

request对象有哪些方法?

楼主xiakebuxing(侠客不行)2004-08-04 10:57:13 在 Java / Web 开发 提问

如题,提供电子书的满分. 问题点数:100、回复次数:11Top

1 楼790228(自古华山一条道)回复于 2004-08-04 11:32:05 得分 10

你留下E-MAILTop

2 楼liujiansxcd(黑客精神)回复于 2004-08-04 11:38:03 得分 10

兄弟,你装tomcat了吗?tomcat/webapps/tomcat-docs下面有servlet的API,你所要的东西那里面都会有,不只是request,其他的变量也都有!Top

3 楼lovelymaomao(小老鼠)回复于 2004-08-04 11:42:01 得分 0

他啊。。你没有javadoc嘛?Top

4 楼liujiansxcd(黑客精神)回复于 2004-08-04 11:45:24 得分 10

javadoc里面没有servlet和jsp的文档,要专门去下,或者一些服务器自带这些文档!Top

5 楼xiakebuxing(侠客不行)回复于 2004-08-19 15:58:21 得分 0

up,我有许多问题没有人答。散分!  
  Top

6 楼yihan422(穿22号球衣的)回复于 2004-08-19 16:08:48 得分 20

Field   Summary    
  static   java.lang.String   BASIC_AUTH    
                      String   identifier   for   Basic   authentication.      
  static   java.lang.String   CLIENT_CERT_AUTH    
                      String   identifier   for   Client   Certificate   authentication.      
  static   java.lang.String   DIGEST_AUTH    
                      String   identifier   for   Digest   authentication.      
  static   java.lang.String   FORM_AUTH    
                      String   identifier   for   Form   authentication.      
      Method   Summary    
    java.lang.String   getAuthType()    
                      Returns   the   name   of   the   authentication   scheme   used   to   protect   the   servlet.      
    java.lang.String   getContextPath()    
                      Returns   the   portion   of   the   request   URI   that   indicates   the   context   of   the   request.      
    Cookie[]   getCookies()    
                      Returns   an   array   containing   all   of   the   Cookie   objects   the   client   sent   with   this   request.      
    long   getDateHeader(java.lang.String   name)    
                      Returns   the   value   of   the   specified   request   header   as   a   long   value   that   represents   a   Date   object.      
    java.lang.String   getHeader(java.lang.String   name)    
                      Returns   the   value   of   the   specified   request   header   as   a   String.      
    java.util.Enumeration   getHeaderNames()    
                      Returns   an   enumeration   of   all   the   header   names   this   request   contains.      
    java.util.Enumeration   getHeaders(java.lang.String   name)    
                      Returns   all   the   values   of   the   specified   request   header   as   an   Enumeration   of   String   objects.      
    int   getIntHeader(java.lang.String   name)    
                      Returns   the   value   of   the   specified   request   header   as   an   int.      
    java.lang.String   getMethod()    
                      Returns   the   name   of   the   HTTP   method   with   which   this   request   was   made,   for   example,   GET,   POST,   or   PUT.      
    java.lang.String   getPathInfo()    
                      Returns   any   extra   path   information   associated   with   the   URL   the   client   sent   when   it   made   this   request.      
    java.lang.String   getPathTranslated()    
                      Returns   any   extra   path   information   after   the   servlet   name   but   before   the   query   string,   and   translates   it   to   a   real   path.      
    java.lang.String   getQueryString()    
                      Returns   the   query   string   that   is   contained   in   the   request   URL   after   the   path.      
    java.lang.String   getRemoteUser()    
                      Returns   the   login   of   the   user   making   this   request,   if   the   user   has   been   authenticated,   or   null   if   the   user   has   not   been   authenticated.      
    java.lang.String   getRequestedSessionId()    
                      Returns   the   session   ID   specified   by   the   client.      
    java.lang.String   getRequestURI()    
                      Returns   the   part   of   this   request's   URL   from   the   protocol   name   up   to   the   query   string   in   the   first   line   of   the   HTTP   request.      
    java.lang.StringBuffer   getRequestURL()    
                      Reconstructs   the   URL   the   client   used   to   make   the   request.      
    java.lang.String   getServletPath()    
                      Returns   the   part   of   this   request's   URL   that   calls   the   servlet.      
    HttpSession   getSession()    
                      Returns   the   current   session   associated   with   this   request,   or   if   the   request   does   not   have   a   session,   creates   one.    
    HttpSession   getSession(boolean   create)    
                      Returns   the   current   HttpSession   associated   with   this   request   or,   if   there   is   no   current   session   and   create   is   true,   returns   a   new   session.      
    java.security.Principal   getUserPrincipal()    
                      Returns   a   java.security.Principal   object   containing   the   name   of   the   current   authenticated   user.      
    boolean   isRequestedSessionIdFromCookie()    
                      Checks   whether   the   requested   session   ID   came   in   as   a   cookie.    
    boolean   isRequestedSessionIdFromUrl()    
                      Deprecated.   As   of   Version   2.1   of   the   Java   Servlet   API,   use   isRequestedSessionIdFromURL()   instead.    
    boolean   isRequestedSessionIdFromURL()    
                      Checks   whether   the   requested   session   ID   came   in   as   part   of   the   request   URL.    
    boolean   isRequestedSessionIdValid()    
                      Checks   whether   the   requested   session   ID   is   still   valid.    
    boolean   isUserInRole(java.lang.String   role)    
                      Returns   a   boolean   indicating   whether   the   authenticated   user   is   included   in   the   specified   logical   "role".      
  Top

7 楼yihan422(穿22号球衣的)回复于 2004-08-19 16:10:20 得分 10

Method   Detail    
   
  getAuthType  
  public   java.lang.String   getAuthType()Returns   the   name   of   the   authentication   scheme   used   to   protect   the   servlet.   All   servlet   containers   support   basic,   form   and   client   certificate   authentication,   and   may   additionally   support   digest   authentication.   If   the   servlet   is   not   authenticated   null   is   returned.    
  Same   as   the   value   of   the   CGI   variable   AUTH_TYPE.    
   
   
  Returns:  
  one   of   the   static   members   BASIC_AUTH,   FORM_AUTH,   CLIENT_CERT_AUTH,   DIGEST_AUTH   (suitable   for   ==   comparison)   or   the   container-specific   string   indicating   the   authentication   scheme,   or   null   if   the   request   was   not   authenticated.  
   
  --------------------------------------------------------------------------------  
   
  getCookies  
  public   Cookie[]   getCookies()Returns   an   array   containing   all   of   the   Cookie   objects   the   client   sent   with   this   request.   This   method   returns   null   if   no   cookies   were   sent.    
   
  Returns:  
  an   array   of   all   the   Cookies   included   with   this   request,   or   null   if   the   request   has   no   cookies  
   
  --------------------------------------------------------------------------------  
   
  getDateHeader  
  public   long   getDateHeader(java.lang.String   name)Returns   the   value   of   the   specified   request   header   as   a   long   value   that   represents   a   Date   object.   Use   this   method   with   headers   that   contain   dates,   such   as   If-Modified-Since.    
  The   date   is   returned   as   the   number   of   milliseconds   since   January   1,   1970   GMT.   The   header   name   is   case   insensitive.    
   
  If   the   request   did   not   have   a   header   of   the   specified   name,   this   method   returns   -1.   If   the   header   can't   be   converted   to   a   date,   the   method   throws   an   IllegalArgumentException.    
   
   
  Parameters:  
  name   -   a   String   specifying   the   name   of   the   header    
  Returns:  
  a   long   value   representing   the   date   specified   in   the   header   expressed   as   the   number   of   milliseconds   since   January   1,   1970   GMT,   or   -1   if   the   named   header   was   not   included   with   the   request    
  Throws:    
  java.lang.IllegalArgumentException   -   If   the   header   value   can't   be   converted   to   a   date  
   
  --------------------------------------------------------------------------------  
   
  getHeader  
  public   java.lang.String   getHeader(java.lang.String   name)Returns   the   value   of   the   specified   request   header   as   a   String.   If   the   request   did   not   include   a   header   of   the   specified   name,   this   method   returns   null.   If   there   are   multiple   headers   with   the   same   name,   this   method   returns   the   first   head   in   the   request.   The   header   name   is   case   insensitive.   You   can   use   this   method   with   any   request   header.    
   
  Parameters:  
  name   -   a   String   specifying   the   header   name    
  Returns:  
  a   String   containing   the   value   of   the   requested   header,   or   null   if   the   request   does   not   have   a   header   of   that   name  
   
  --------------------------------------------------------------------------------  
   
  getHeaders  
  public   java.util.Enumeration   getHeaders(java.lang.String   name)Returns   all   the   values   of   the   specified   request   header   as   an   Enumeration   of   String   objects.    
  Some   headers,   such   as   Accept-Language   can   be   sent   by   clients   as   several   headers   each   with   a   different   value   rather   than   sending   the   header   as   a   comma   separated   list.    
   
  If   the   request   did   not   include   any   headers   of   the   specified   name,   this   method   returns   an   empty   Enumeration.   The   header   name   is   case   insensitive.   You   can   use   this   method   with   any   request   header.    
   
   
  Parameters:  
  name   -   a   String   specifying   the   header   name    
  Returns:  
  an   Enumeration   containing   the   values   of   the   requested   header.   If   the   request   does   not   have   any   headers   of   that   name   return   an   empty   enumeration.   If   the   container   does   not   allow   access   to   header   information,   return   null  
   
  --------------------------------------------------------------------------------  
   
  getHeaderNames  
  public   java.util.Enumeration   getHeaderNames()Returns   an   enumeration   of   all   the   header   names   this   request   contains.   If   the   request   has   no   headers,   this   method   returns   an   empty   enumeration.    
  Some   servlet   containers   do   not   allow   servlets   to   access   headers   using   this   method,   in   which   case   this   method   returns   null    
   
   
  Returns:  
  an   enumeration   of   all   the   header   names   sent   with   this   request;   if   the   request   has   no   headers,   an   empty   enumeration;   if   the   servlet   container   does   not   allow   servlets   to   use   this   method,   null  
   
  --------------------------------------------------------------------------------  
   
  getIntHeader  
  public   int   getIntHeader(java.lang.String   name)Returns   the   value   of   the   specified   request   header   as   an   int.   If   the   request   does   not   have   a   header   of   the   specified   name,   this   method   returns   -1.   If   the   header   cannot   be   converted   to   an   integer,   this   method   throws   a   NumberFormatException.    
  The   header   name   is   case   insensitive.    
   
   
  Parameters:  
  name   -   a   String   specifying   the   name   of   a   request   header    
  Returns:  
  an   integer   expressing   the   value   of   the   request   header   or   -1   if   the   request   doesn't   have   a   header   of   this   name    
  Throws:    
  java.lang.NumberFormatException   -   If   the   header   value   can't   be   converted   to   an   int  
   
  --------------------------------------------------------------------------------  
   
  getMethod  
  public   java.lang.String   getMethod()Returns   the   name   of   the   HTTP   method   with   which   this   request   was   made,   for   example,   GET,   POST,   or   PUT.   Same   as   the   value   of   the   CGI   variable   REQUEST_METHOD.    
   
  Returns:  
  a   String   specifying   the   name   of   the   method   with   which   this   request   was   made  
   
  --------------------------------------------------------------------------------  
   
  getPathInfo  
  public   java.lang.String   getPathInfo()Returns   any   extra   path   information   associated   with   the   URL   the   client   sent   when   it   made   this   request.   The   extra   path   information   follows   the   servlet   path   but   precedes   the   query   string   and   will   start   with   a   "/"   character.    
  This   method   returns   null   if   there   was   no   extra   path   information.    
   
  Same   as   the   value   of   the   CGI   variable   PATH_INFO.    
   
   
  Returns:  
  a   String,   decoded   by   the   web   container,   specifying   extra   path   information   that   comes   after   the   servlet   path   but   before   the   query   string   in   the   request   URL;   or   null   if   the   URL   does   not   have   any   extra   path   information  
   
  --------------------------------------------------------------------------------  
   
  getPathTranslated  
  public   java.lang.String   getPathTranslated()Returns   any   extra   path   information   after   the   servlet   name   but   before   the   query   string,   and   translates   it   to   a   real   path.   Same   as   the   value   of   the   CGI   variable   PATH_TRANSLATED.    
  If   the   URL   does   not   have   any   extra   path   information,   this   method   returns   null   or   the   servlet   container   cannot   translate   the   virtual   path   to   a   real   path   for   any   reason   (such   as   when   the   web   application   is   executed   from   an   archive).   The   web   container   does   not   decode   this   string.    
   
   
  Returns:  
  a   String   specifying   the   real   path,   or   null   if   the   URL   does   not   have   any   extra   path   information  
  Top

8 楼yyqllxh2004(潇一郎)回复于 2004-08-19 16:10:25 得分 10

<%@   page   import="java.io.*"%>  
  Request   Object   Info:  
  <hr>      
  <%  
  out.println("<br>   getMethod:");  
  out.println(request.getMethod());    
  out.println("<br>getParameter:");  
  out.println(request.getParameter("name"));  
   
  out.println("<br>getAttributeNames:");  
  java.util.Enumeration   e=request.getAttributeNames();  
  while(e.hasMoreElements())  
  out.println(e.nextElement());  
   
  out.println("<br>getCharacterEncoding:");  
  out.println(request.getCharacterEncoding());  
  out.println("<br>getContentLength:   ");  
  out.println(request.getContentLength());  
  out.println("<br>getContentType:");  
  out.println(request.getContentType());  
  out.println("<br>getLocale:");  
  out.println(request.getLocale());  
  out.println("<br>getProtocol:");  
  out.println(request.getProtocol());  
  out.println("<br>getRemoteAddr:");  
  out.println(request.getRemoteAddr());  
  out.println("<br>getRemoteHost:");  
  out.println(request.getRemoteHost());  
  out.println("<br>getRemoteUser:");  
  out.println(request.getRemoteUser());  
  out.println("<br>getServerName:");  
  out.println(request.getServerName());  
  out.println("<br>getServerPort:");  
  out.println(request.getServerPort());  
  out.println("<br>getSession:");  
  out.println(request.getSession(true));  
  out.println("<br>getHeader('User-Agent')");  
  out.println(   request.getHeader("User-Agent"));  
  %>  
   
  不过以后这个问题最好不要问,电子图书网上多的是Top

9 楼yihan422(穿22号球衣的)回复于 2004-08-19 16:10:37 得分 10

getContextPath  
  public   java.lang.String   getContextPath()Returns   the   portion   of   the   request   URI   that   indicates   the   context   of   the   request.   The   context   path   always   comes   first   in   a   request   URI.   The   path   starts   with   a   "/"   character   but   does   not   end   with   a   "/"   character.   For   servlets   in   the   default   (root)   context,   this   method   returns   "".   The   container   does   not   decode   this   string.    
   
  Returns:  
  a   String   specifying   the   portion   of   the   request   URI   that   indicates   the   context   of   the   request  
   
  --------------------------------------------------------------------------------  
   
  getQueryString  
  public   java.lang.String   getQueryString()Returns   the   query   string   that   is   contained   in   the   request   URL   after   the   path.   This   method   returns   null   if   the   URL   does   not   have   a   query   string.   Same   as   the   value   of   the   CGI   variable   QUERY_STRING.    
   
  Returns:  
  a   String   containing   the   query   string   or   null   if   the   URL   contains   no   query   string.   The   value   is   not   decoded   by   the   container.  
   
  --------------------------------------------------------------------------------  
   
  getRemoteUser  
  public   java.lang.String   getRemoteUser()Returns   the   login   of   the   user   making   this   request,   if   the   user   has   been   authenticated,   or   null   if   the   user   has   not   been   authenticated.   Whether   the   user   name   is   sent   with   each   subsequent   request   depends   on   the   browser   and   type   of   authentication.   Same   as   the   value   of   the   CGI   variable   REMOTE_USER.    
   
  Returns:  
  a   String   specifying   the   login   of   the   user   making   this   request,   or   null   if   the   user   login   is   not   known  
   
  --------------------------------------------------------------------------------  
   
  isUserInRole  
  public   boolean   isUserInRole(java.lang.String   role)Returns   a   boolean   indicating   whether   the   authenticated   user   is   included   in   the   specified   logical   "role".   Roles   and   role   membership   can   be   defined   using   deployment   descriptors.   If   the   user   has   not   been   authenticated,   the   method   returns   false.    
   
  Parameters:  
  role   -   a   String   specifying   the   name   of   the   role    
  Returns:  
  a   boolean   indicating   whether   the   user   making   this   request   belongs   to   a   given   role;   false   if   the   user   has   not   been   authenticated  
   
  --------------------------------------------------------------------------------  
   
  getUserPrincipal  
  public   java.security.Principal   getUserPrincipal()Returns   a   java.security.Principal   object   containing   the   name   of   the   current   authenticated   user.   If   the   user   has   not   been   authenticated,   the   method   returns   null.    
   
  Returns:  
  a   java.security.Principal   containing   the   name   of   the   user   making   this   request;   null   if   the   user   has   not   been   authenticated  
   
  --------------------------------------------------------------------------------  
   
  getRequestedSessionId  
  public   java.lang.String   getRequestedSessionId()Returns   the   session   ID   specified   by   the   client.   This   may   not   be   the   same   as   the   ID   of   the   current   valid   session   for   this   request.   If   the   client   did   not   specify   a   session   ID,   this   method   returns   null.    
   
  Returns:  
  a   String   specifying   the   session   ID,   or   null   if   the   request   did   not   specify   a   session   ID  
  See   Also:  
  isRequestedSessionIdValid()  
   
  --------------------------------------------------------------------------------  
   
  getRequestURI  
  public   java.lang.String   getRequestURI()Returns   the   part   of   this   request's   URL   from   the   protocol   name   up   to   the   query   string   in   the   first   line   of   the   HTTP   request.   The   web   container   does   not   decode   this   String.   For   example:   First   line   of   HTTP   request     Returned   Value    
  POST   /some/path.html   HTTP/1.1     /some/path.html      
  GET   http://foo.bar/a.html   HTTP/1.0       /a.html      
  HEAD   /xyz?a=b   HTTP/1.1     /xyz      
   
  To   reconstruct   an   URL   with   a   scheme   and   host,   use   HttpUtils.getRequestURL(javax.servlet.http.HttpServletRequest).    
   
   
  Returns:  
  a   String   containing   the   part   of   the   URL   from   the   protocol   name   up   to   the   query   string  
  See   Also:  
  HttpUtils.getRequestURL(javax.servlet.http.HttpServletRequest)  
   
  --------------------------------------------------------------------------------  
   
  getRequestURL  
  public   java.lang.StringBuffer   getRequestURL()Reconstructs   the   URL   the   client   used   to   make   the   request.   The   returned   URL   contains   a   protocol,   server   name,   port   number,   and   server   path,   but   it   does   not   include   query   string   parameters.    
  Because   this   method   returns   a   StringBuffer,   not   a   string,   you   can   modify   the   URL   easily,   for   example,   to   append   query   parameters.    
   
  This   method   is   useful   for   creating   redirect   messages   and   for   reporting   errors.    
   
   
  Returns:  
  a   StringBuffer   object   containing   the   reconstructed   URL  
   
  --------------------------------------------------------------------------------  
   
  getServletPath  
  public   java.lang.String   getServletPath()Returns   the   part   of   this   request's   URL   that   calls   the   servlet.   This   path   starts   with   a   "/"   character   and   includes   either   the   servlet   name   or   a   path   to   the   servlet,   but   does   not   include   any   extra   path   information   or   a   query   string.   Same   as   the   value   of   the   CGI   variable   SCRIPT_NAME.    
  This   method   will   return   an   empty   string   ("")   if   the   servlet   used   to   process   this   request   was   matched   using   the   "/*"   pattern.    
   
   
  Returns:  
  a   String   containing   the   name   or   path   of   the   servlet   being   called,   as   specified   in   the   request   URL,   decoded,   or   an   empty   string   if   the   servlet   used   to   process   the   request   is   matched   using   the   "/*"   pattern.  
   
  --------------------------------------------------------------------------------  
   
  getSession  
  public   HttpSession   getSession(boolean   create)Returns   the   current   HttpSession   associated   with   this   request   or,   if   there   is   no   current   session   and   create   is   true,   returns   a   new   session.    
  If   create   is   false   and   the   request   has   no   valid   HttpSession,   this   method   returns   null.    
   
  To   make   sure   the   session   is   properly   maintained,   you   must   call   this   method   before   the   response   is   committed.   If   the   container   is   using   cookies   to   maintain   session   integrity   and   is   asked   to   create   a   new   session   when   the   response   is   committed,   an   IllegalStateException   is   thrown.    
   
   
  Parameters:  
  create   -   true   to   create   a   new   session   for   this   request   if   necessary;   false   to   return   null   if   there's   no   current   session    
  Returns:  
  the   HttpSession   associated   with   this   request   or   null   if   create   is   false   and   the   request   has   no   valid   session  
  See   Also:  
  getSession()  
   
  --------------------------------------------------------------------------------  
   
  getSession  
  public   HttpSession   getSession()Returns   the   current   session   associated   with   this   request,   or   if   the   request   does   not   have   a   session,   creates   one.    
   
  Returns:  
  the   HttpSession   associated   with   this   request  
  See   Also:  
  getSession(boolean)  
   
  --------------------------------------------------------------------------------  
   
  isRequestedSessionIdValid  
  public   boolean   isRequestedSessionIdValid()Checks   whether   the   requested   session   ID   is   still   valid.    
   
  Returns:  
  true   if   this   request   has   an   id   for   a   valid   session   in   the   current   session   context;   false   otherwise  
  See   Also:  
  getRequestedSessionId(),   getSession(boolean),   HttpSessionContext  
   
  --------------------------------------------------------------------------------  
   
  isRequestedSessionIdFromCookie  
  public   boolean   isRequestedSessionIdFromCookie()Checks   whether   the   requested   session   ID   came   in   as   a   cookie.    
   
  Returns:  
  true   if   the   session   ID   came   in   as   a   cookie;   otherwise,   false  
  See   Also:  
  getSession(boolean)  
   
  --------------------------------------------------------------------------------  
   
  isRequestedSessionIdFromURL  
  public   boolean   isRequestedSessionIdFromURL()Checks   whether   the   requested   session   ID   came   in   as   part   of   the   request   URL.    
   
  Returns:  
  true   if   the   session   ID   came   in   as   part   of   a   URL;   otherwise,   false  
  See   Also:  
  getSession(boolean)  
   
  --------------------------------------------------------------------------------  
   
  isRequestedSessionIdFromUrl  
  public   boolean   isRequestedSessionIdFromUrl()Deprecated.   As   of   Version   2.1   of   the   Java   Servlet   API,   use   isRequestedSessionIdFromURL()   instead.Top

10 楼edhappy(咕咕鸟)回复于 2004-08-19 18:18:47 得分 10

看看api不就可以了。Top

11 楼lbh16888()回复于 2004-08-19 22:11:17 得分 10

yihan422(穿22号球衣的)   哈哈,我喜欢你的方式,我平常不知道函数的用法的时候,我就会去看类文件的注解,呵呵。感觉那是最好的回答了!Top

相关问题

  • request对象的方法无法运行
  • applet中得到session,request对象的方法
  • 类方法,对象方法
  • 怎样看一个DLL有哪些对象和方法可以调用?
  • javax.xml中用什么方法和对象来接收request中的xml文档,急!
  • session对象实现方法
  • 请问谁知道 ExecClearItem 这个方法是做什么的?用在哪些组件或对象上?
  • 对象的方法的方法?
  • 请问大家:asp里request对象的BinaryRead方法在php里怎么用呢?有对应的方法吗?还有TotalBytes属性在php里怎么用阿?
  • 只有用 面向对象方法吗?

关键词

  • client
  • cgi
  • header
  • lang
  • request
  • specifying
  • enumeration
  • authenticated
  • containing
  • isrequestedsessionidfromurl

得分解答快速导航

  • 帖主:xiakebuxing
  • 790228
  • liujiansxcd
  • liujiansxcd
  • yihan422
  • yihan422
  • yyqllxh2004
  • yihan422
  • edhappy
  • lbh16888

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo