豆瓣API接口开发,结合angularJS来做,感觉爽歪歪!

第一次做还是先说下API 是什么鬼?

API : application program interface 应用程序编程接口:

有那些常见的API:

webAPI : 通过WEB方式提供结构叫 WEBAOPI ;

API : 所有有输入有输出的东西都可以称之为API  --- 都是函数;

例如:Math.random()  --- api

例如:

豆瓣API 开发平台:

https://developers.douban.com/wiki/?title=guide

豆瓣API V2 (测试版):

https://developers.douban.com/wiki/?title=api_v2

会看到:

这些都是豆瓣提供的一些常用的API接口:

找到对应的,例如:电影API V2 进去:

例如:找一个正在上映的接口:

点击进去就可以看到:

正在上映:
Resources URI
/v2/movie/in_theaters

那么对应的“正在上映”的API地址就是:

http://api.douban.com/v2/movie/in_theaters

访问就可以看到效果;

对应API 接口的一些参数:

简单使用

例如:start : 表示从那条开始,可以用来做翻页;

例如:count 表示多少条:

http://api.douban.com/v2/movie/in_theaters?count=2 

返回的内容是这样的:

这样看很难看明白:可以借助一些工具:

例如:google的一个插件:

或者360浏览器的:

使用之后查看后的效果就会好一些;

如何结合angularJS去处理数据?

例如请求回来的数据是这样的:

{
    "count": 2,
    "start": 0,
    "total": 36,
    "subjects": [
        {
            "rating": {
                "max": 10,
                "average": 7.6,
                "stars": "40",
                "min": 0
            },
            "genres": [
                "剧情",
                "动作",
                "武侠"
            ],
            "title": "绣春刀II:修罗战场",
            "casts": [
                {
                    "alt": "https://movie.douban.com/celebrity/1077991/",
                    "avatars": {
                        "small": "http://img3.doubanio.com/img/celebrity/small/1453574419.48.jpg",
                        "large": "http://img3.doubanio.com/img/celebrity/large/1453574419.48.jpg",
                        "medium": "http://img3.doubanio.com/img/celebrity/medium/1453574419.48.jpg"
                    },
                    "name": "张震",
                    "id": "1077991"
                },
                {
                    "alt": "https://movie.douban.com/celebrity/1052359/",
                    "avatars": {
                        "small": "http://img7.doubanio.com/img/celebrity/small/37843.jpg",
                        "large": "http://img7.doubanio.com/img/celebrity/large/37843.jpg",
                        "medium": "http://img7.doubanio.com/img/celebrity/medium/37843.jpg"
                    },
                    "name": "杨幂",
                    "id": "1052359"
                },
                {
                    "alt": "https://movie.douban.com/celebrity/1274761/",
                    "avatars": {
                        "small": "http://img7.doubanio.com/img/celebrity/small/25943.jpg",
                        "large": "http://img7.doubanio.com/img/celebrity/large/25943.jpg",
                        "medium": "http://img7.doubanio.com/img/celebrity/medium/25943.jpg"
                    },
                    "name": "张译",
                    "id": "1274761"
                }
            ],
            "collect_count": 60970,
            "original_title": "绣春刀II:修罗战场",
            "subtype": "movie",
            "directors": [
                {
                    "alt": "https://movie.douban.com/celebrity/1321200/",
                    "avatars": {
                        "small": "http://img7.doubanio.com/img/celebrity/small/59201.jpg",
                        "large": "http://img7.doubanio.com/img/celebrity/large/59201.jpg",
                        "medium": "http://img7.doubanio.com/img/celebrity/medium/59201.jpg"
                    },
                    "name": "路阳",
                    "id": "1321200"
                }
            ],
            "year": "2017",
            "images": {
                "small": "http://img3.doubanio.com/view/movie_poster_cover/ipst/public/p2492665487.webp",
                "large": "http://img3.doubanio.com/view/movie_poster_cover/lpst/public/p2492665487.webp",
                "medium": "http://img3.doubanio.com/view/movie_poster_cover/spst/public/p2492665487.webp"
            },
            "alt": "https://movie.douban.com/subject/26270502/",
            "id": "26270502"
        },
        {
            "rating": {
                "max": 10,
                "average": 5.4,
                "stars": "30",
                "min": 0
            },
            "genres": [
                "剧情",
                "动作",
                "奇幻"
            ],
            "title": "悟空传",
            "casts": [
                {
                    "alt": "https://movie.douban.com/celebrity/1013782/",
                    "avatars": {
                        "small": "http://img7.doubanio.com/img/celebrity/small/1368156632.65.jpg",
                        "large": "http://img7.doubanio.com/img/celebrity/large/1368156632.65.jpg",
                        "medium": "http://img7.doubanio.com/img/celebrity/medium/1368156632.65.jpg"
                    },
                    "name": "彭于晏",
                    "id": "1013782"
                },
                {
                    "alt": "https://movie.douban.com/celebrity/1315861/",
                    "avatars": {
                        "small": "http://img7.doubanio.com/img/celebrity/small/1368598869.24.jpg",
                        "large": "http://img7.doubanio.com/img/celebrity/large/1368598869.24.jpg",
                        "medium": "http://img7.doubanio.com/img/celebrity/medium/1368598869.24.jpg"
                    },
                    "name": "倪妮",
                    "id": "1315861"
                },
                {
                    "alt": "https://movie.douban.com/celebrity/1041510/",
                    "avatars": {
                        "small": "http://img7.doubanio.com/img/celebrity/small/802.jpg",
                        "large": "http://img7.doubanio.com/img/celebrity/large/802.jpg",
                        "medium": "http://img7.doubanio.com/img/celebrity/medium/802.jpg"
                    },
                    "name": "余文乐",
                    "id": "1041510"
                }
            ],
            "collect_count": 72206,
            "original_title": "悟空传",
            "subtype": "movie",
            "directors": [
                {
                    "alt": "https://movie.douban.com/celebrity/1274244/",
                    "avatars": {
                        "small": "http://img7.doubanio.com/img/celebrity/small/1387853548.15.jpg",
                        "large": "http://img7.doubanio.com/img/celebrity/large/1387853548.15.jpg",
                        "medium": "http://img7.doubanio.com/img/celebrity/medium/1387853548.15.jpg"
                    },
                    "name": "郭子健",
                    "id": "1274244"
                }
            ],
            "year": "2017",
            "images": {
                "small": "http://img3.doubanio.com/view/movie_poster_cover/ipst/public/p2475060299.webp",
                "large": "http://img3.doubanio.com/view/movie_poster_cover/lpst/public/p2475060299.webp",
                "medium": "http://img3.doubanio.com/view/movie_poster_cover/spst/public/p2475060299.webp"
            },
            "alt": "https://movie.douban.com/subject/26035290/",
            "id": "26035290"
        }
    ],
    "title": "正在上映的电影-北京"
}

使用angularJS :

<script type=‘text/javascript‘>
var myApp = angular.module(‘myApp‘,[]);
myApp.controller(‘myAppController‘,[‘$scope‘,function($scope){
    $scope.subjects = date[‘subjects‘];
}]);
})(angular);
</script>

页面循环遍历使用 angularJS的语法:

<div ng-app="myAPp" ng-controller="myAppController">
    <div class="media" ng-repeat="item in subjects track by $index">
      <div class="media-left">
        <a href="#">
          <img class="media-object" ng-src="{{item.images.small}}" alt="{{item.title}}">
        </a>
      </div>
      <div class="media-body">
        <h4 class="media-heading">{{item.title}}</h4>
        <p>剧情:{{item.genres.join(‘、‘)}}</p>
        <p>演员:<span ng-repeat="atc in item.casts track by $index">{{atc.name}}<span ng-if="!$last">、</span></span></p>
      </div>
    </div>
</div>

页面效果:

这个只是用 angularJS 结合 豆瓣API 开发的一个小例子。如有雷同,纯属偶然;

时间: 2024-10-11 00:11:15

豆瓣API接口开发,结合angularJS来做,感觉爽歪歪!的相关文章

浅谈使用 PHP 进行手机 APP 开发(API 接口开发)

做过 API 的人应该了解,其实开发 API 比开发 WEB 更简洁,但可能逻辑更复杂,因为 API 其实就是数据输出,不用呈现页面,所以也就不存在 MVC(API 只有 M 和 C),那么我们来探讨下,如何使用php进行手机API接口开发 一.先简单回答两个问题: 1.PHP 可以开发客户端? 答:可以,因为PHP是脚本语言,是负责完成 B/S架构 或 C/S架构 的S部分,即:主要用于服务端的开发.但是,PHP可不仅仅只能在互联网站上发展,一个PHP for Android(PFA)站点表示

API接口开发 配置、实现、测试

Yii2 基于RESTful架构的 advanced版API接口开发 配置.实现.测试 环境配置: 开启服务器伪静态 本处以apache为例,查看apache的conf目录下httpd.conf,找到下面的代码 LoadModule rewrite_module modules/mod_rewrite.so 将其前面的#去掉,如果没有找到则添加进去. 找到一下代码 <Directory "C:/phpStudy/Apache/cgi-bin"> AllowOverride

(微信API接口开发) 使用HttpWebRequest进行请求时发生错误:基础连接已关闭,发送时发生错误处理

最近调试原来的微信模拟登陆时发生了"基础连接已关闭,发送时发生错误"的错误提示,原来都是好好的,只是很久没用了. 出错代码如下: ? 1 2 3 4 5 6 7 HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("https://mp.weixin.qq.com/cgi-bin/loginpage?t=wxm2-login&lang=zh_CN");///cgi-bin/loginpage?

爱搜索,爱生活,基于豆瓣API &amp; Angular开发的web App(by vczero)

一.扯淡的说 name:[豆瓣搜索] 最近关注了下豆瓣的API,发现豆瓣开放平台需要加强API文档撰写啊....但是有个可喜的发现豆瓣V2接口提供了搜索接口.最近在用phantom弄些爬虫,想想,真是美丽极了!有个豆瓣的接口,我都不用去爬数据,不用数据存储,丢给github page直接完事.豆瓣,Nice!最近也在看angular,于是就萌生了使用Angular + 豆瓣API 做一个web app.于是...网上回家就折腾了. 体验地址:http://vczero.github.io/t/h

浅谈 PHP 与手机 APP 开发(API 接口开发)

本文内容转载自:http://www.thinkphp.cn/topic/5023.html 这个帖子写给不太了解PHP与API开发的人 一.先简单回答两个问题: 1.PHP 可以开发客户端?答:不可以,因为PHP是脚本语言,是负责完成 B/S架构 或 C/S架构 的S部分,即:服务端的开发.(别去纠结 GTK.WinBinder) 2.为什么选择 PHP 作为开发服务端的首选?答:跨平台(可以运行在UNIX.LINUX.WINDOWS.Mac OS下).低消耗(PHP消耗相当少的系统资源).运

Restful风格API接口开发springMVC篇

Restful风格的API是一种软件架构风格,设计风格而不是标准,只是提供了一组设计原则和约束条件.它主要用于客户端和服务器交互类的软件.基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制. 在Restful风格中,用户请求的url使用同一个url而用请求方式:get,post,delete,put...等方式对请求的处理方法进行区分,这样可以在前后台分离式的开发中使得前端开发人员不会对请求的资源地址产生混淆和大量的检查方法名的麻烦,形成一个统一的接口. 在Restful风格中,现

聊聊 PHP 与手机 APP 开发(API 接口开发)

对于新手开发api接口的一探讨 一.先简单回答两个问题: 1.PHP 可以开发客户端?答:不可以,因为PHP是脚本语言,是负责完成 B/S架构 或 C/S架构 的S部分,即:服务端的开发.(别去纠结 GTK.WinBinder) 2.为什么选择 PHP 作为开发服务端的首选?答:跨平台(可以运行在UNIX.LINUX.WINDOWS.Mac OS下).低消耗(PHP消耗相当少的系统资源).运行效率高(相对而言).MySQL的完美搭档,本身是免费开源的,...... 二.如何使用 PHP 开发 A

API接口开发简述

作为最流行的服务端语言PHP(PHP: Hypertext Preprocessor),在开发API方面,是很简单且极具优势的.API(Application Programming Interface,应用程序接口)架构,已经成为目前互联网产品开发中常见的软件架构模式,并且诞生很多专门API服务的公司,如:聚合数据(https://www.juhe.cn/).百度APIStore(http://apistore.baidu.com/) 先了解下 API :1.API 比开发 WEB 更简洁,但

浅谈PHP与手机APP开发(API接口开发)

1 了解PHP与API开发 2 一.先简单回答两个问题: 3 4 1.PHP 可以开发客户端? 5 答:不可以,因为PHP是脚本语言,是负责完成 B/S架构 或 C/S架构 的S部分,即:服务端的开发.(别去纠结 GTK.WinBinder) 6 7 2.为什么选择 PHP 作为开发服务端的首选? 8 答:跨平台(可以运行在UNIX.LINUX.WINDOWS.Mac OS下).低消耗(PHP消耗相当少的系统资源).运行效率高(相对而言).MySQL的完美搭档,本身是免费开源的,...... 9