dongxuxian1123 2013-06-19 16:06
浏览 45
已采纳

使用curl而不使用命令行,但使用php进行post方法

I need to do a http post/curl query from php and store the result in a jsor variable.

In my documentation, it says there are two ways:

  • An HTTP POST request with Content-Type "multipart/form-data" where all parameters are in the post body and the track is in the "track" section of the post "files"
  • An HTTP POST request with Content-Type "application/octet-stream", with the local file as the body of the request, and the parameters in the URL

Example POSTs:

curl -X POST "http://developer.echonest.com/api/v4/track/upload" -d "api_key=xxxxxx&url=http://example.com/audio.mp3"

But how do I implement this in php? I have no clue. From what I have been reading, I don;t think the curl_init method would work, like they describe on the php website, since it is a not a post method:

$ch = curl_init("http://www.example.com/");
$fp = fopen("example_homepage.txt", "w");

curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);

curl_exec($ch);
curl_close($ch);
fclose($fp);

I would welcome any indication as how to proceed. Thanks.

  • 写回答

1条回答 默认 最新

  • dsgsgs30201 2013-06-19 16:32
    关注

    How about this way?

    $post = array(
         "url"=>"path/to/file/example_homepage.txt",
         "api_key"=>"xxxxxx"
    );
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_URL, "http://developer.echonest.com/api/v4/track/upload");
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post); 
    $response = curl_exec($ch);
    

    There are other options, depending on the situation you might need them, SSL, Cookies, User Agents, etc... Here's a link to the php reference!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码