我正在尝试使用 apify 获取网站标题,但是当我运行代码时出现错误 403,有人知道修复方法吗?
我的代码:
currentLink = "https://medium.com/vice/scientists-monitored-631-people-as-they-died-this-is-what-they-found-2de48ad9ed96";
const postUrl = "https://api.apify.com/v2/actor-tasks/LdLPzP6nopWgexrqX/run-sync-get-dataset-items?token=" + token;
var values = {
contentType: "application/json",
"startUrls": [{
"url": currentLink,
}]
};
$.ajax({
url: postUrl,
method: 'POST',
dataType: 'json',
data: JSON.stringify(values),
success: function(response) {
console.log(response.data); // Actor run object
getItemsFromDataset(response.data.defaultDatasetId);
}
});
我认为这是我的错误: 加载资源失败:服务器响应状态为 403 () 附上一个显示正确结果的链接。
答案 0 :(得分:1)
您正在使用 run-sync-get-dataset-items
端点,它返回数据集(并且只有数据集,即项目数组,而不是运行对象)。然后您尝试获取项目,假设您提供的是 defaultDatasetId
,在本例中为 undefined
。最后,你会得到一个错误。这也可以解释为什么您会通过链接看到这些项目。
不知道为什么是错误 403,而不是 404,但我没有看到 getItemsFromDataset() 的实现。请您先检查一下上面的内容好吗?