推特流.意外代币E



我正在尝试在我的web应用程序上设置一个搜索按钮,该按钮使用流式API通过搜索输入检索所有twitter推文。

这是我的客户端代码:index.ejs

<form class="navbar-form navbar-left" role="search">
  <div class="form-group">
    <input class="form-control" id="searchValue" placeholder="Search" type="text">
      <button type="submit" class="btn btn-success" id="searchButton">
        <span class="glyphicon glyphicon-search"></span>
      </button>
  </div>
</form>

search.js

$(document).ready(function() {
    $("#searchButton").click(function(e) {
        e.preventDefault();
        var searchValue = $("#searchValue").val();
        $.ajax({
            url: "/submit",
            type: "POST",
            data: {
                searchValue: searchValue
            }
        });
     });
 });

最后是我的服务器端代码(使用node.js/express)

var util = require('util'),
  twitter = require('twitter');
var twit = new twitter({
  consumer_key: '',
  consumer_secret: '',
  access_token_key: '',
  access_token_secret: ''
});

router.post('/submit', function (req, res) {
  twit.stream('statuses/filter', {
    'track': [req.body.searchValue]
  }, function (stream) {
    stream.on('data', function (tweets) {
      var tweet = tweets.text;
    });
    stream.on('error', function (err) {
      console.log(err);
    });
  });
});

当我使用搜索按钮两次时,它会起作用,但在第三次输入搜索时,它将显示以下错误消息:

[SyntaxError: Unexpected token E]

感谢您提前提供的帮助!

Twitter正在用"超过用户连接限制"消息来响应请求。这就是E的由来。文本不是有效的JSON对象。

相关内容

  • 没有找到相关文章

最新更新