这是我在node.js服务器上运行的代码。我有从Instagram开发者页面中定义的OAuth2.0协议获得的正确访问令牌。
function getMedia(accessToken) {
var instagram = require('instagram-node').instagram();
instagram.use({
access_token: accessToken
});
instagram.user_self_media_recent(function(err, medias, pagination, remaining, limit) {
if(err) {
console.log(err);
}
console.log(medias);
});
}
我在错误回复中得到了这个:
{ Error: getaddrinfo ENOTFOUND api.instagram.com api.instagram.com:443
at errnoException (dns.js:28:10)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:76:26)
code: 'ENOTFOUND',
errno: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'api.instagram.com',
host: 'api.instagram.com',
port: 443,
retry: [Function: retry] }
有谁知道这个错误响应意味着什么?
答案 0 :(得分:0)
初始化Instagram客户端时,您应该使用应用程序的客户端ID和客户端密钥。
instagram.use({
client_id: INSTA_CLIENT_ID,
client_secret: INSTA_CLIENT_SECRET,
});
然后使用您必须访问的访问令牌来验证特定的Instagram用户并代表他们请求媒体。
instagram.use({
access_token: accessToken
});
instagram.user_self_media_recent(function(err, medias, pagination, remaining, limit) {
if(err) {
console.log(err);
}
console.log(medias);
});
首次初始化Instagram节点客户端时,必须使用在注册应用here时从Instagram收到的身份验证凭据。