Click to return to the Microsoft FrontPage home page    
Web Workshop  |  Languages & Development Tools  |  Microsoft FrontPage

Microsoft® FrontPage® 2000 Server Extensions


Microsoft Corporation

Updated April 15, 1999

The FrontPage client and the FrontPage Server Extensions communicate with each other using a Remote Procedure Call (RPC) protocol that is layered on top of HTTP and HTML. When the FrontPage client needs the server extensions to do something, it sends a POST request to the server.

This POST request is addressed to one of three DLLs within the web that is being authored

The body of the POST request contains the command in the form "method=command", where "command" is a string indicating the operation that the FrontPage client wants the server to execute.

The Server Extensions respond to the request by executing the command and returning a "200 OK" response. The message body of the response contains information returned by the command, in nested name-value pairs.

The message body takes this general form:

   <html>
   <head></head>
   <body>
   <p>item1=value
   <p>item2=value
   <p>item3=<ul>
        <li>item3.1=value
        <li>item3.2=value
        <ul>
            <li>item3.3.1=value
            <li>item3.3.2=value
        </ul>
   </body>
   </html>

To illustrate how the RPC protocol works, here is a look at part of a FrontPage client/Server Extensions conversation. In this sample, the FrontPage client establishes a connection with a server running the Server Extensions and determines which version of the Server Extensions are running.

Note   This transcript has been edited for clarity and unimportant parts have been suppressed.

    GET /_vti_inf.html HTTP/1.0
    Date: Fri, 17 Apr 1998 02:05:31 GMT
    User-Agent: Mozilla/2.0 (compatible; MS FrontPage 3.0)
    Host: fp4

The server responds by returning the file. The client reads the response and finds the value associated with "FPShtmlScriptUrl", which tells it where to POST requests for browse-time commands to be executed. Now that it knows where to POST to, it asks the server what version of the server extensions it is running:

    POST /_vti_bin/shtml.dll/_vti_rpc HTTP/1.0
    User-Agent: MSFrontPage/4.0
    Content-Type: application/x-www-form-urlencoded
    method=server version

The Server Extensions process the "method=server version" request and return their version information:

    HTTP/1.0 200 OK
    Server: Microsoft-IIS/3.0
    Date: Fri, 17 Apr 1998 02:04:43 GMT
    Content-type: application/x-vermeer-rpc
    
    <html><head><title>RPC packet</title></head>
    <body>
        <p>method=server version
        <p>server version=
              <ul>
            <li>major ver=3
            <li>minor ver=0
            <li>phase ver=2
            <li>ver incr=926
           </ul>
    </body>
    </html>


Back to topBack to top

Did you find this material useful? Gripes? Compliments? Suggestions for other articles? Write us!

© 1999 Microsoft Corporation. All rights reserved. Terms of use.