0

我正在尝试与 PHP 中的 topspin API 进行交互。

在他们的网站上:

curl --data "auth_token=abc123&email=test@example.com&account_id=1&
acquired_by=curltest" http://api.artistlink.com/home/fans.json

如何在 PHP 中执行此操作?

我试过这样的事情:

$str= "?auth_token=blah&email=blah@blah.com&account_id=1&
acquired_by=curltest";

$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,'http://api.artistlink.com/home/fans.json'.$str);      curl_exec($ch);
curl_close($ch);

但我明白了: 在此处输入图像描述

这是怎么回事?

4

2 回答 2

1

你需要使用CURLOPT_POSTFIELDS. 试试这个:

<?php
    $ch = curl_init('http://api.artistlink.com/home/fans.json');
    $data = "auth_token=blah&email=blah@blah.com&account_id=1&acquired_by=curltest";        
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_exec($ch);
    curl_close($ch);
?>

在这里查看更多信息。

于 2013-04-03T15:57:59.193 回答
0

您正在使用HTTP_GET而不是HTTP_POSTTry:

$str = "auth_token=blah&email=blah@blah.com&account_id=1&acquired_by=curltest";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://api.artistlink.com/home/fans.json');
curl_setopt($ch, CURLOPT_POSTFIELDS, $str);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$data = curl_exec($ch);
curl_close($ch);

$json = json_decode($data);
if (isset($json->error)) {
    echo $json->error;
} else {
    print_r($json);
}
于 2013-04-06T20:38:52.050 回答