使用PHP和CURL发出PUT请求

时间:2011-03-25 07:28:00

标签: php curl

首先,我的工作基于以下假设: 根据REST架构,您可以使用PUT创建一个新资源,在我的例子中是一个包含用户提供的其他信息的文件。

如果这个概念不正确请告诉我,所以我不会从架构的角度提出错误的问题。

我发现使用CURL有两个与PUT请求相关的事情。

使用以下方法,您可以发送一组值,就像普通的POST请求一样。

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");

并使用此:

curl_setopt($ch, CURLOPT_PUT, 1);

可以上传文件。

  • 这两个选项有关吗?
  • 它们是在同一个PUT请求中发送文件和某些元信息的互补方式吗?
  • 上传文件并为其发送类别和说明等附加信息的解决方案是什么

    我只是想模仿POST功能

        $post_params['name'] = urlencode('Test User');
        $post_params['file'] = '@'.'/tmp/never_ending_progress_bar2.gif';
    
  • 1 个答案:

    答案 0 :(得分:6)

    CURLOPT_CUSTOMREQUEST非常有用,当你想要/需要做一些不常见的特殊请求时,可以通过它自己的选项来支持它。

    CURLOPT_POSTCURLOPT_PUTCURLOPT_GET允许您发送POST / PUT / GET个请求 - 这些是某些类型的通常足以拥有自己选择的请求;这意味着他们不需要您使用CURLOPT_CUSTOMREQUEST