Compartilhar via


Como a: Post Windows SharePoint de serviços RPC métodos

Você pode usar protocolo URL em combinação com CAML (de colaboração de aplicativo de marcação de idioma) e Windows SharePoint Services Remote Procedure Call Protocol (RPC) para postagem solicitações para um servidor Web de front-end execução Windows SharePoint Services. Use o elemento método CAML para postagem uma única solicitação, ou um elemento 2d716503-4843-4f8c-86d6-392707ce9095 em lotes contendo múltiplo elementos Method método para postagem múltiplo solicita, através de corpo de uma forma em uma página .aspx postagem. A seguinte tarefa programação mostra como criar uma forma para lançamento solicitações.

Para criar uma forma para lançamento solicitações

  1. Criar uma página .aspx e adicionar uma diretiva página, such as o seguinte, que registra o espaço para nome Microsoft.SharePoint.WebControls para o controle de servidor.

                            <%@ Register Tagprefix="SharePoint" 
      Namespace="Microsoft.SharePoint.WebControls" 
      Assembly="Microsoft.SharePoint, Version=11.0.0.0, 
      Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
    

    Observação

    You can obtain the PublicKeyToken value for the current Windows SharePoint Services deployment from the default.aspx file in the path Local_Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\SiteTemplates\sts, or from information provided for the Microsoft.SharePoint assembly at Local_Drive:\%WINDOWS%\assembly in Windows Explorer.

  2. Adicione o seguinte bloco de scripts para automaticamente inserir o FormDigest T:Microsoft.SharePoint.WebControls.FormDigest controle em cada elemento bfcb7a97-c9e7-4b16-9a20-9c023c9ffc2b Método quando a forma é enviada.

                            <script type="text/javascript" language="JavaScript">
    function InsertSecurityValidation(oForm)
    {
        var sFormDigest = '<SetVar name="__REQUESTDIGEST">' + 
          oForm.elements["__REQUESTDIGEST"].value + "</SetVar>\n";
        var oPostBody = oForm.elements["PostBody"];
        var rePattern = /<\/Method>/g;
        oPostBody.value = oPostBody.value.replace(rePattern, 
            sFormDigest + "</Method>");
    }
    </script>
    
  3. Crie uma forma na página .aspx such as o seguinte, onde o atributo action ação contém o comando URL que está lançado para o servidor.

                            <form method="post" 
      action="http://Server_Name/sites/Site_Name/_vti_bin/owssvr.dll" 
      onsubmit="InsertSecurityValidation(this);">
      <SharePoint:FormDigest runat="server" />
      <input type="hidden" name="Cmd" value="DisplayPost" />
      <textarea rows="18" name="PostBody" cols="72"></textarea>
      <input type="submit" value="Submit" />
      <input type="reset" value="Reset" />
    </form>
    

    A forma usa o método 9019ce72-f6a6-43a9-ade5-5c8542c3ba97 DisplayPost a solicitação que a processar servidor qualquer CAML está contido em corpo de postagem.

  4. Abra a forma no navegador e insira um bloco de codificar como o seguinte o corpo postagem, que usa o elemento 2d716503-4843-4f8c-86d6-392707ce9095 em lote para postagem múltiplo RPC métodos para adicionar dois anúncios para uma lista de avisos:

                            <ows:Batch Version="6.0.2.5608" OnError="Return">
      <Method ID="A1">
        <SetList>List_GUID</SetList>
        <SetVar name="ID">New</SetVar>
        <SetVar name="Cmd">Save</SetVar>
        <SetVar name="urn:schemas-microsoft-com:office:office#Title">
            New Program Manager</SetVar>
        <SetVar name="urn:schemas-microsoft-com:office:office#Body">
            Congratulations to Jane for her promotion!</SetVar>
        <SetVar name="urn:schemas-microsoft-com:office:office#Expires">
            2001-09-14T00:00:00Z</SetVar>
      </Method>
      <Method ID="A2">
        <SetList>List_GUID</SetList>
        <SetVar name="ID">New</SetVar>
        <SetVar name="Cmd">Save</SetVar>
        <SetVar name="urn:schemas-microsoft-com:office:office#Title">
            Sales rise by 10%</SetVar>
        <SetVar name="urn:schemas-microsoft-com:office:office#Body">The
            accounting department has released its quarterly report. 
            Check it out!</SetVar>
        <SetVar name="urn:schemas-microsoft-com:office:office#Expires">
            2001-12-18T00:00:00Z</SetVar>
      </Method>
    </ows:Batch>
    

Compilar o código

O elemento 2d716503-4843-4f8c-86d6-392707ce9095 em lotes deve conter um atributo Version versão que especifica a versão de Windows SharePoint Services que o servidor está execução. Cada nó cd87a9ba-771d-4980-9a8a-1cca4cfd2ad1 SetList deve especificar o GUID da lista.

Quando a forma é enviada, este exemplo adiciona dois registros para uma lista de avisos.

Segurança

Se validação de segurança é habilitado no servidor, que é true Por padrão em Windows SharePoint Services e, em seguida, um FormDigest T:Microsoft.SharePoint.WebControls.FormDigest servidor controle devem ser adicionados dentro de forma. Para informações sobre esse controle e validação de segurança, consulte A validação de segurança e fazer postagens para atualizar os dados. Cada elemento bfcb7a97-c9e7-4b16-9a20-9c023c9ffc2b do método usado em uma postagem deve ter um digest forma especificado; caso contrário, a postagem será não transmitir validação de segurança.