使用php从New relic API获取服务器列表

使用php从New relic API获取服务器列表,php,curl,newrelic,Php,Curl,Newrelic,我尝试使用CURL-php从newrelic-API获取数据 curl -X GET 'https://api.newrelic.com/v2/servers.json' \ -H 'X-Api-Key:my-api-key' -i \ 我写 $ch = curl_init('https://api.newrelic.com/v2/servers.json'); curl_setopt($ch, CURLOPT_HTTPHEADER, ['X-Api-Key' =&g

我尝试使用CURL-php从newrelic-API获取数据

curl -X GET 'https://api.newrelic.com/v2/servers.json' \
     -H 'X-Api-Key:my-api-key' -i \
我写

    $ch = curl_init('https://api.newrelic.com/v2/servers.json');
    curl_setopt($ch, CURLOPT_HTTPHEADER, ['X-Api-Key' => 'my-api-key']);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $data = curl_exec($ch);
    if (curl_errno($ch)) {
        print "Error: " . curl_error($ch);
    }
    curl_close($ch);
    var_dump($data);

但它不起作用,并且写入
403 New Relic API access未启用
我做错了什么?

如果“我的API密钥”不是API密钥的替代项,请用API密钥替换它。如果是,则验证它确实是api密钥,而不是许可证密钥或数据访问密钥。API密钥可能未激活,您可以通过转到 (将账号替换为您的账户id号)

以下是一个工作示例:

#!/usr/bin/php
<?php

//Your New Relic API key
$api_key = "1234abcd1234";

$curl = curl_init();
curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://api.newrelic.com/v2/servers.json',
    CURLOPT_HEADER => true, // Instead of the "-i" flag,
    CURLOPT_HTTPHEADER => array("X-Api-Key:".$api_key)
));
$resp = curl_exec($curl);
curl_close($curl); 
print_r($resp)
?>
#/usr/bin/php

您好,您的一切都做得很好,但发送的标题错误。一定是下一个

    $ch = curl_init('https://api.newrelic.com/v2/servers.json');
    curl_setopt($ch, CURLOPT_HTTPHEADER, ['X-Api-Key:my-api-key']);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $data = curl_exec($ch);
    if (curl_errno($ch)) {
        print "Error: " . curl_error($ch);
    }
    curl_close($ch);
    var_dump($data);
如果您的
我的api密钥
是真实的api密钥:)