gpt4 book ai didi

javascript - 推特 API 和 Node

转载 作者:搜寻专家 更新时间:2023-11-01 00:19:00 25 4
gpt4 key购买 nike

我正在尝试使用 https://github.com/jdub/node-twitter 从 Twitter 检索我的最后一条推文

我想声明一个变量,在函数内更改该变量,然后在该函数外再次使用它。这可能吗?

我已经通过身份验证,如果我这样做可以看到我的最后一条推文:

var tweet;

twit.get('http://api.twitter.com/1/statuses/user_timeline.json', function(data) {
tweet = data[0].text;
console.log(tweet);
});

但我想将我的代码分开并执行:

var tweet;

twit.get('http://api.twitter.com/1/statuses/user_timeline.json', function(data) {
tweet = data[0].text;
});

console.log(tweet);

推文仍未定义。

请教育我:-)

最佳答案

您希望能够立即使用 console.log,但 node.js 不是同步的,这就是它如此强大和快速的原因。您必须习惯使用 node.js 的异步编码模式。获取请求是异步的。在回调发生之前不会分配推文。

Console.log 在发出异步请求后立即执行。

尝试:(编辑-我建议这样做,然后编辑问题以包含此代码)

twit.get('http://api.twitter.com/1/statuses/user_timeline.json', function(data) {
tweet = data[0].text;
console.log(tweet); // executed after call returns
});

// executes immediately after request is sent
console.log("request sent");

请注意,twit.get 调用的第二个参数是一个匿名函数,它将在完成异步请求后执行。

此输出应为“请求已发送”,然后是按该顺序的推文结果。

关于javascript - 推特 API 和 Node ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11330239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com