如何使用 API V2 Moz HTTP 请求

2024-01-19

我正在尝试使用 HTTP 请求通过文件获取内容功能连接到 Moz API V2,但我是新使用这个...你们能帮助我吗?

他们的文档中的 HTTP 请求示例:

POST /v2/url_metrics
Host: lsapi.seomoz.com
Content-Length: [length of request payload in bytes]
User-Agent: [user agent string]
Authorization: Basic [credentials]
{
    "targets": ["facebook.com"]
}

这是我正在尝试的代码:

$url = 'https://lsapi.seomoz.com/v2/url_metrics';
$domains = json_encode(['targets' => 'moz.com']);

$opts = ['http' =>
    [
        'method' => 'POST',
        'header' => 'Content-Type: application/x-www-form-urlencoded\r\n'.
            ("Authorization: Basic " . base64_encode("mozscape-XXXXX:XXXXX")),
        'content-length' => strlen($domains),
        'user-agent' => $_SERVER['HTTP_USER_AGENT'],
        'content' => $domains,
    ]
];

$context = stream_context_create($opts);
$result = file_get_contents($url, false, $context);

print_r($result);

这是文档的链接:https://moz.com/help/links-api/making-calls/url-metrics https://moz.com/help/links-api/making-calls/url-metrics

打印结果时我什么也没得到,可能我缺少一些参数......:(

感谢您的时间 :)


抱歉,迟到的解决方案我之前忘记在这里发布了......

也许有人正在寻找如何将 moz API V2 与 PHP 结合使用...

$username='Access ID';
$password='Secret Key';
$URL='https://lsapi.seomoz.com/v2/url_metrics';
$payload = json_encode(array("targets" => ["moz.com"]));

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$URL);
curl_setopt($ch, CURLOPT_TIMEOUT, 30); //timeout after 30 seconds
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
$result=curl_exec ($ch);
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);   //get status code
curl_close ($ch);


print_r(json_decode($result, true));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 API V2 Moz HTTP 请求 的相关文章