之前不知道接口是什么,最近通过一段时间的学习。以下为接口的入门理解。
1:首先接口是什么: 简单的来说,接口以及API可以理解为flask框架下的url路由。外部网站通过这个url去访问这个接口,然后接口再进行操作。
2.以下为使用接口的简单案例
# -*- coding=utf-8 -*- import time from flask import Flask,g,request,make_response,render_template,jsonify import hashlib import xml.etree.ElementTree as ET import urllib2 import json from flask import abort app = Flask(__name__) app.debug=True @app.route('/',methods=['GET','POST']) def wechat_auth(): r = urllib2.urlopen('http://1.625124155.applinzi.com/aix/2') c = r.read() b = json.loads(c) d= b["task"] if d != None: #return str(d['title']) return d['title'] else: return '空的' tasks = [ { 'id': 1, 'title': u'Buy groceries', 'description': u'Milk, Cheese, Pizza, Fruit, Tylenol', 'done': False }, { 'id': 2, 'title':'丁', 'description': u'Need to find a good Python tutorial on the web', 'done': False } ] @app.route('/aix/<int:task_id>',methods=['GET']) def aix(task_id): task = filter(lambda t: t['id'] == task_id, tasks) if len(task) == 0: abort(404) return jsonify({'task': task[0]}) if __name__ == '__main__': app.run()
以上既是访问接口以及接口通过json返回数据的简单范例
最后注意以下问题:
1.上图中的路由,写在了一个网站中,这里只是简单示范。任何网站通过url都可以接入这个接口。(关于接口的安全接入问题,本文不予讨论)
2.上图中的json传输需要注意:本文中传输的是一个字典里面的字典。所以在获取json传输值的时候,才要先找到b['task'] 参考本文的时候需要注意这一点
3.目前的接口是通过外网访问,所以本地环境的部署,在测试的时候会有报错。需要先部署 然后测试。