<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ### 1.3 何時使用 POST 方法 本節簡要介紹POST 的不同應用場合。 #### 問題描述 您想知道POST 方法的潛在應用場合。 #### 解決方案 在以下場合中使用POST 方法: ? 創建新的資源,把資源作為一個工廠,詳見 1.4 節。 ? 通過一個控制器資源來修改一個或多個資源。 ? 執行需要大數據輸入的查詢,詳見 5.3 節。 ? 在其他HTTP 方法看上去不合適時,執行不安全或非冪等的操作。 #### 問題討論 在 HTTP 協議中,POST 方法的語義是最通用的,HTTP 規范定義這個方法可以應用于以下場合: ? 對已存在資源做評論或注解。 ? 向公告板、新聞組、郵件列表或類似的文章群組發送消息。 ? 提供數據塊,例如,作為表單提交到數據處理器處理后的結果。 ? 通過追加操作擴充數據庫。 所有這些操作都是不安全和非冪等的,所有基于HTTP 的工具都會這樣對待POST,例如: ? 緩存不會緩存這一方法的響應。 ? 網絡爬蟲和類似的工具不會自動發起POST 請求。 ? 大部分通用的HTTP 工具不會自動重復提交POST 請求。 這些處理方式給服務器留下了巨大的空間,將POST作為針對多種操作的一個通用方法,包括 穿隧(tunneling)注2,考慮以下例子: ~~~ # 一條穿隧了HTTP POST的XML RPC消息 POST /RPC2 HTTP/1.1 Host: www.example.org Content-Type: text/xml;charset=UTF-8 <methodName>messages.delete</methodName> <params> <param> <value><int>1234</int></value> </param> </params> </methodCall> ~~~ 這是一個XML-RPC(`http://www.xmlrpc.com/`)通過POST方法穿隧操作的例子。另一個知名的例子是HTTP上的SOAP: ~~~ # 一條穿隧了HTTP POST的SOAP消息 POST /Messages HTTP/1.1 Host: www.example.org Content-Type: application/soap+xml; charset=UTF-8 <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body xmlns:ns="http://www.example.org/messages"> <ns:DeleteMessage> <ns:MessageId>1234</ns:MessageId> </ns:DeleteMessage> </soap:Body> </soap:Envelope> ~~~ 這兩個例子都是對POST 方法的誤用。例如,DELETE 方法在此更為適用: ~~~ # 使用 DELETE DELETE /message/1234 HTTP/1.1 Host: www.example.org ~~~ 另外,以下情況必須使用POST,即使 GET 才是正確的方法: * ? 瀏覽器等HTML 客戶端在發起請求獲取相關資源時,將頁面的 URI 作為Referer 頭。這可能會把包含在URI 中的敏感信息泄露給外部服務器。這種情況下,使用傳輸層安全協議(Transport Layer Security,TLS,SSL 的接班人),或者,如果不能加密URI 中的敏感信息,考慮使用POST 處理HTML 文檔。 * ? 正如將在5.3 節討論的,當客戶端提交的查詢包含太多參數時,POST 可能是唯一的選擇。但即使是以上情況,POST 也應當是最后的選擇。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看