Qt quick 示例:推特搜索程序开发

本文将创建一个Tweet Search一个QML应用程序,它使用许多查询参数来搜索发布到Twitter服务的项目。可以搜索来自指定用户的推文,主题标签或搜索短语。

Qt组件推荐:

  • QtitanRibbon| 下载试用: 遵循Microsoft Ribbon UI Paradigm for Qt技术的Ribbon UI组件,致力于为Windows、Linux和Mac OS X提供功能完整的Ribbon组件。
  • QtitanChart | 下载试用 :是一个C ++库,代表一组控件,这些控件使您可以快速地为应用程序提供漂亮而丰富的图表。并且支持所有主要的桌面

以下是具有3D效果的Twitter搜索客户端。

Qt quick 示例:推特搜索程序开发

Qt quick 示例:推特搜索程序开发

Tweet Search是一个QML应用程序,它使用许多查询参数来搜索发布到Twitter服务的项目。可以搜索来自指定用户的推文,主题标签或搜索短语。

搜索结果是显示推文内容以及发布该推文的用户的名称和图像的项目列表。内容中的标签,名称和链接是可单击的。单击图像将翻转该项目以显示更多信息。

运行示例

要从Qt Creator运行示例,请打开“welcome”模式,然后从“demo”中选择demo。有关更多信息,请访问构建和运行示例。

Tweet Search使用Twitter API v1.1来运行搜索。

请求认证

每个请求都必须代表应用程序进行身份验证。出于演示目的,该应用程序使用硬编码令牌来向Twitter服务标识自己。但是,此令牌受请求数量以及可能到期的速率限制。

如果您在运行演示时遇到身份验证或速率限制问题,请通过在https://dev.twitter.com/apps上注册一个新应用程序来获取一组特定于应用程序的令牌(消费者密钥和消费者密码)。

TweetsModel.qml中输入两个令牌值:

    property string consumerKey : ""    property string consumerSecret : ""

重建并运行演示。

JSON解析

搜索结果以JSON(JavaScript对象表示法)格式返回。TweetsModel使用XMLHTTPRequest对象发送HTTP GET请求,并在返回的文本字符串上调用JSON.parse()以将其转换为JavaScript对象。然后,将代表推文的每个对象添加到ListModel:

        var req = new XMLHttpRequest;        req.open("GET", "https://api.twitter.com/1.1/search/tweets.jsonrom=" + from +                        "&count=10&q=" + encodePhrase(phrase));        req.setRequestHeader("Authorization", "Bearer " + bearerToken);        req.onload = function() {            var objectArray = JSON.parse(req.responseText);            if (objectArray.errors !== undefined) {                console.log("Error fetching tweets: " + objectArray.errors[0].message)            } else {                for (var key in objectArray.statuses) {                    var jsonObject = objectArray.statuses[key];                    tweets.append(jsonObject);                }            }            wrapper.isLoaded()        }        req.send();

Qt quick 示例:推特搜索程序开发

标签:

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月1日
下一篇 2021年1月1日

相关推荐

发表回复

登录后才能评论