我是PHP新手,我有一个任务是使用API从我的客户端获取数据。但问题是,即使对此进行了研究和尝试,也无法理解此API。
我的客户给了我API的详细信息
URL - http://222.126.31.19:8084/api/login
Username - admin123
Password - test123这些只是一个虚拟的值..我的客户还说,值应该是来自登录api的令牌响应,并在前面加上单词“承载人”
在做了一个研究之后..我尝试过此代码,但浏览器上什么也没有显示。我能做的任何想法或建议..
function CallAPI($method, $url, $data = false)
{
$curl = curl_init();
switch ($method)
{
case "POST":
curl_setopt($curl, CURLOPT_POST, 1);
if ($data)
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
break;
case "PUT":
curl_setopt($curl, CURLOPT_PUT, 1);
break;
default:
if ($data)
$url = sprintf("%s?%s", $url, http_build_query($data));
}
// Optional Authentication:
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($curl, CURLOPT_USERPWD, "admin123:test123");
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($curl);
curl_close($curl);
return $result;
}我需要把这个放在按钮上吗?抱歉,如果我在这里问,已经一天了,我不能解决它。
发布于 2019-03-15 21:36:52
大多数REST API都使用某种类型的会话id。如果您正在登录,您将获得一个用于进一步调用的会话id,以及您的登录凭据的可能调用列表。但每种API的工作方式都不同。就像BT643说的,他们必须给你某种形式的文档。我使用下面的代码来访问我正在使用的一些API。如果你喜欢,可以试一试。
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, 'http://222.126.31.19:8084/api/login');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_USERPWD, 'admin123' . ":" . 'test123');
$out = json_decode(curl_exec($ch));
curl_close($ch);然后,您可以使用以下命令打印返回结果(如果有):
echo '<pre>'
var_dump($out);
echo '</pre>';这只是为了看看您的调用是否有任何结果。
https://stackoverflow.com/questions/55174267
复制相似问题