【Qt编程】基于Qt的词典开发系列<七>--调用网络API

前面文章中我们实现了本地的词库设计,可以完成本地的查词功能,那么这篇文章主要讲一讲如何通过调用网络的api来实现词典的网络查词功能

词典API的选择

基本上市面上做词典软件的公司都有对应的api,比如说有道、金山等等,不过一般都需要api key,有点麻烦,于是乎,我就找了个简单好用的扇贝网API:http://www.shanbay.com/help/developer/api/ 奇怪的是,该api说要停用了,可以从我去年暑假完成该软件制作,到如今为止,还能正常使用。

扇贝词典api的使用

进入上面我给的扇贝网的api地址,我们可以看出该api文档还是比较详细。像我这种从未接触过网络编程的人来说,也能比较了解。下面我们来简单说说怎么使用这些api。由于我词典的功能只有查词、添加单词两种功能,因此只需要使用文档中的对应的api接口就可以了。

在api介绍的开始处,有下面的文字如下:
【Qt编程】基于Qt的词典开发系列<七>--调用网络API_第1张图片

因此,在使用该api时,我们必须首先注册!完成注册并登录后,我们继续查看api文档,由于我们只实现查询单词和保存单词的功能(当然也可以实现文档中的其它功能,使用方法类似),因此只需关注下面如图所示的内容就够了:
【Qt编程】基于Qt的词典开发系列<七>--调用网络API_第2张图片
有可能你看了图中的内容,还是一头雾水,那么我们可以先尝试一下。首先确保已经登录了扇贝网,然后在浏览器中输入:http://www.shanbay.com/api/word/test ,然后我们就可以看到如下的内容:
【Qt编程】基于Qt的词典开发系列<七>--调用网络API_第3张图片

图中的内容就是我们查询test单词所得到的结果。如果我们想要保存该单词,则只需要在浏览器中输入:http://www.shanbay.com/api/learning/add/test 我们得到的结果如下:

【Qt编程】基于Qt的词典开发系列<七>--调用网络API_第4张图片

上图说明这个单词已经被我们保存了,并且给予了它一个编号。因此,当我们再查询该单词的时候,即在浏览器中输入:http://www.shanbay.com/api/word/test 会发现id不再是0,而是与上面的编号相同:
【Qt编程】基于Qt的词典开发系列<七>--调用网络API_第5张图片
到目前为止,上述的操作都不涉及到编程,都是直接在浏览器中进行的操作。然而,我们想要在词典中实现该功能,则就不得不面对两个问题:1、编程实现用户的登录及调用api;2、解析调用api后返回的json格式的数据。

上述的两个问题都会在后续的系列文章中予以解决,敬请关注。

基于Qt的词典开发系列

  1. 词典框架设计及成品展示
  2. 本地词典的设计
  3. 开始菜单的设计
  4. 无边框窗口的缩放与拖动
  5. 无边框窗口的拖动
  6. 界面美化设计
  7. 调用网络API
  8. 用户登录及API调用的实现
  9. JSON数据解析
  10. 国际音标的显示
  11. 系统托盘的显示
  12. 调用讲述人
  13. 音频播放
  14. 自动补全功能
  15. HTML特殊字符及正则表达式
  16. 后序

作品下载地址(发布版):http://download.csdn.net/detail/tengweitw/8548767
作品下载地址(绿色版):http://download.csdn.net/detail/tengweitw/8830495
源码下载地址:http://download.csdn.net/detail/tengweitw/8830503

原文:http://blog.csdn.net/tengweitw/article/details/45484803

作者:nineheadedbird

你可能感兴趣的:(编程,api,网络,qt,词典)