デコードされたメソッド

最終更新日: 2010年3月23日

適用対象: SharePoint Foundation 2010

この参照内のデコードされたセクションには、ネットワーク モニターなどのプログラムを使用する場合の実際のコードは表示されません。そのようなプログラムでは、サーバーとの間のネットワーク トラフィックをパケット レベルで調査したり、Microsoft FrontPage Server Extensions と Microsoft Office FrontPage2003 などのクライアント アプリケーションの間のパケットをキャプチャしたりできます。ここでは、パケット キャプチャ プログラムで監視するコードと、例をわかりやすく表示するためにこの参照で使用される手順について説明します。

注意

使用しているオペレーティング システムとプログラムによって、HTTP パケットか TCP パケットのどちらでパケットをフィルターできるかが決まります。フィルターとして TCP を使用する場合、HTTP POST コマンドに関して、各 TCP パケットを確認する必要があります。たとえば、UNIX システムでは、TCP パケットに必ず HTTP プロトコルが埋め込まれています。

通常、最初にキャプチャするパケットは HTTP POST です。この後に、Keep-Alive パケットが送信されます。最後に送信される 1 つまたは複数のパケットには、メソッドに対するリターン コードが含まれます。リターン コードは、常に 1 つ以上の HTML ページ形式になります。ほとんどのリターン コードには、送信されるデータに関する情報を持つメタキーが含まれています。

Microsoft SharePoint Foundation または Microsoft FrontPage Server Extensions を使用してクライアント アプリケーションから送信されるすべての POST 要求には、実行する RPC メソッドとそのメソッドに必要なパラメーターを指定する文字列が含まれます。たとえば、以下の POST の例では、FrontPage Server Extensions が実装されます。

POST./site_url/_vti_bin/_vti_aut/author.dll 
HTTP/1.0CRLF
Date: Thu, 03 Dec 2003 19:09:16 GMTCRLF
MIME-Version: 1.0CRLF
User-Agent: MSFrontPage/6.0CRLF
Host: server_nameCRLF
Accept: auth/sicilyCRLF
Authorization: Basic cm9iZjpUS3NvKjUwCRLF
Content-Length: 343CRLF
Content-Type: application/x-www-form-urlencodedCRLF
X-Vermeer-Content-Type: application/x-www-form-urlencodedCRLF
method=list+documents%3a6%2e0%2e2%2e5420service%5
fname=%2fallnew&listHiddenDocs=false&listExplorerDocs=
   false&listRecurse=false&listFiles=true&listFolders=true
&listLinkInfo=true&listIncludeParent=true&listDerived=
   false&listBorders=false&listChildWebs=true
&initialUrl=&platform=WinI386&folderList=
   %5b%3bTW%7c09+Nov+1998+17%3a03%3a25+%2d0000%5d.LF

前の例は、クライアント アプリケーションによって送信されるフォーマットを示しています。一方、Network Monitor などのプログラムを使用して POST をキャプチャしたときは、以下のように表示されます。

POST./site_url/_vti_bin/_vti_aut/author.dll.HTTP/1.0..Date:.Tue,.19.Jan.2003.19:58:GMT.. 
MIME-Version:.1.0..User-Agent:.MSFrontPage/6.0..Host:.v-rfrank3.. 
Accept:.auth/sicily..Authorization:.Basic.di1yZnJhbms6VEtzbzUwKg==.. 
Content-Length:.317..Content-Type:.application/x-www-form-urlencode.. 
X-Vermeer-Content-Type:.application/x-www-form-urlencoded.... 
method=list+documents%3a6%2e0%2e2%2e5420&service%5fname=&listHiddenDocs=false 
&listExplorerDocs=false&listRecurse=false&listFiles=true&listFolders=true 
&listLinkInfo=true&listIncludeParent=true&listDerived=false&listBorders=false 
&listChildWebs=true&initialUrl=&folderList=%5b%3bTW%7c13+Jan+2003+16%3a16%3a17+%2d0000%5d.

前の例は、最初に他のコードに埋め込まれた一連のデータを、以下のように示します。

00000030 50 4F 53 54 20 2F 70 72 6F 64 
POST./site_url/ 00000040 39 38 2F 5F 76 74 69 5F 62 69 6E 2F 5F 76 74 69 
98/_vti_bin/_vti 00000050 5F 61 75 74 2F 61 75 74 68 6F 72 2E 64 6C 6C 20 
_aut/author.dll. 00000060 48 54 54 50 2F 31 2E 30 0D 0A 44 61 74 65 3A 20 
HTTP/1.0..Date:. 00000070 54 75 65 2C 20 31 39 20 4A 61 6E 20 31 39 39 39 
Tue,.19.Jan.2003 00000080 20 32 30 3A 33 35 3A 32 36 20 47 4D 54 0D 0A 4D 
.19:58:GMT..M

このタイプのコードを参照として使用できるようにわかりやすくするために、いくつかの変更が行われます。最初に、各行の先頭にあるコードをり除いて、POST コマンドを明確にします。次に、残りの改行を削除して、一連のデータにします。その後、よりわかりやすくするために改行を追加します。このストリーム内のピリオド (.) は制御文字またはスペースを表し、これも削除されます。以下の例は、これらの変更が行われた結果を示していますが、まだ理解するのは困難です。

method=list+documents%3a6%2e0%2e2%2e5420&service%5fname=%2fallnew&listHiddenDocs=false 
&listExplorerDocs=false&listRecurse=false&listFiles=true&listFolders=true 
&listLinkInfo=true&listIncludeParent=true&listDerived=false&listBorders=false 
&listChildWebs=true &initialUrl=&platform=WinI386 
&folderList=%5b%3bTW%7c09+Nov+2003+17%3a03%3a25+%2d0000%5d.

メソッド トピックの [デコード] セクションで使用するための最後の準備として、さらにいくつか変更が加えられ、最終的に以下のようなフォーマットになります。

POST./allnew/_vti_bin/_vti_aut/author.dll 
HTTP/1.0CRLF
.
.
.
method=list+documents:6.0.2.5420 &service_name=/allnew 
&listHiddenDocs=false &listExplorerDocs=false 
&listRecurse=false &listFiles=true 
&listFolders=true &listLinkInfo=true 
&listIncludeParent=true 
&listDerived=false &listBorders=false 
&listChildWebs=true &initialUrl= 
&platform=WinI386 &folderList=[;TW|09+Nov+2003+17:03:25+-0000]

この例は、POST コマンドとメソッドを示しています。この場合、POST コマンドのパスは author.dll のポストを指しています。省略記号 (...) は、HTTP ヘッダー ラインが削除されていることを表しています。その後にメソッドとそのパラメーター値がわかりやすいフォーマットで示されます。

デコード済みセクションには、メソッド トピックに表示する目的で、改行が追加されています。

POST コマンドを送信するためのフォーマットの詳細については、「メソッドの構文」を参照してください。